设置自定义字段类型的默认值:list_boolean / options_onoff

时间:2012-01-09 11:29:58

标签: drupal drupal-7

$instance = array(
      'field_name' => $field_name,
      'entity_type' => $entity,
      'bundle' => $bundle,
      'field types' => 'list_boolean',
      'widget' => array(
            'type' => 'options_onoff',
            'settings' => array('display_label' => 1)
        ),
      'default_value' => array(array('value' => 1)),
    );

这不是,我必须在admin contenttype - field / edit中保存两次, 直到它需要它...

3 个答案:

答案 0 :(得分:2)

我现在用features module导出已完成的字段, 并使用生成的代码 - 突然它与default_value

一起工作

我猜我错过了该字段上的module属性,field types也不存在..

答案 1 :(得分:1)

在字段定义中,您必须在settings数组中设置allowed_values,以便获取实例中的default_value。

如此假设您在模块中执行此操作

$fields[] = array(
  'field_name' => '$field_name',
  'type' => 'list_boolean',
  'settings' => array(
    'allowed_values' => drupal_map_assoc(range(0, 1)),
  ),
);

答案 2 :(得分:0)

我没有使用'default_value',而是使用'default_value_function'并创建一个返回数组的函数(array('value'=> 1))。