尝试使用Computed Field模块,该模块允许您创建其值由PHP片段定义的字段.对于随机数,您可以在字段的"计算代码"配置中使用类似的内容:
$node_field[0]['value'] = rand();
请注意,rand()也接受以rand(min,max)形式的min和max参数.
还要确保启用"使用下面的数据库设置存储"设置,数据类型为"int",并根据rand()的预期值范围启用合理的数据长度.这将确保每次显示节点时都不会重新计算字段.
编辑:我刚刚意识到,每次用户更新/重新保存节点时,上述方法都会存储一个新的随机值.如果您希望该字段为每个节点生成并存储一次随机数一次(在节点的初始保存时),请尝试以下操作:
if (!$node_field[0]['value']) {
  $node_field[0]['value'] = rand();
}
这只会为字段设置一个值(如果尚不存在).