Drupal:设置计算型字段

来自站长百科
跳转至: 导航、​ 搜索

设置[ ]

一个计算型字段除了可以用一般的CCK字段选项来进行设置,还可以通过如下的额外选项进行设置:

Computed Code(计算型代码)

此代码会为你的计算型字段赋值。应为不带有<?php ?>标记的有效php。

Display this field (显示该字段)

查看此框使得字段出现在节点视图页面中。你一般会需要这个,除非你希望字段为一个隐藏值。

Display Format(显示格式)

这同样是php代码,它为$display 变量赋予一个字符串。它有作为计算型字段的值:$node_field_item['value']。 同时它有$field,你可以呼叫任何drupal函数来显示字段。


Store using the database settings below(使用如下数据库设定进行存储)

如这个被检查,字段就会在node.save上进行计算并储存。如果没有将字段储存,以后你每次查看一个包含此字段的节点时,它都会被重新计算。

Database Storage Settings(数据库存储设定)[ ]

  • Data Type(数据类型)

如果你需要其他的存储类型或“其他”的选项的话,请告知我们。

  • Data Length(数据长度)

此值将直接传至sql。如需储存10个digit int,就输入10。如需储存浮点类型的货币值,使用10,2(除非你存储的值超过10位数!)。如需存储用户名或其它可变字段的短文本类型的话,输入64会比较合适。

  • Default Value(默认数值)

如果你计算型字段值尚未设定而不希望数据库存储一个默认数值的话,就将其空着。

  • Not NULL,非Null值

如果你允许数据库字段中存在NULL值,就不要管它。

  • Sortable,可排序

此在Views中使用以允许对字段的列进行排序。

小窍门[ ]

  • 如果你希望字段在视图中可见,就将其保存在数据库中。
  • 如果你保存的字段需要访问节点id,就在计算型代码前加上if (!$node->nid) node_save($node);。否则节点就不具有nid。
  • 如果你的计算型字段依赖另一个计算型字段的话,就给它付与更高的weight。否则你将得到字段的较旧值,甚至什么都没有。