CCK字段,最小值数

时间:2011-06-22 10:43:01

标签: php drupal cck required

我创建了一个实现CCK字段的模块。将字段添加到内容类型时,我将值的数量设置为无限制,并将字段设置为必需。

有没有办法设置所需的值数量?我需要用户输入5个或更多值。

提前谢谢。

1 个答案:

答案 0 :(得分:1)

答案在于hook_form_alter() - http://api.drupal.org/api/drupal/developer--hooks--core.php/function/hook_form_alter/6

我认为你需要做两件事:

  1. 更改表单项以包含5 表单加载条目(而不是 通常2用“添加更多”按钮)。

  2. 添加$ form ['#validate'] =     表单的'my_form_validate'条目     检查至少设置了5个。

  3. 1可能有点挑战;我不确定表单第一次加载多个项目的方式。如果你在$ form上做一个vardump,可能很明显。

    对于2,它应该是直截了当的 -

    function my_form_validate($form, &$form_state) {
      $i=0;
      foreach ($form_state['field_my_field_name']...) {
        if (isset(...)) { $i++; }
      }
      if ($i < 5) {
        form_set_error($form_state['field_my_field_name'], 'You must enter 5 foobars');
      }
    }