2011-06-22 32 views
2

我創建了一個實現CCK字段的模塊。將字段添加到內容類型時,我已將值的數量設置爲無限制,並將字段設置爲必需。CCK字段,值的最小值

有沒有辦法設置所需的值的數量?我需要用戶輸入5個或更多值。

預先感謝您。

回答

1

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

你需要做兩件事情,因爲我看到它:

  1. 改變形式,項目包括形式5個 項加載(而不是通常的2「012」)。

  2. 添加$形式[「#驗證」] = 「my_form_validate」條目的形式 檢查至少5分別設置。

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'); 
    } 
} 
+1

還沒有想出第一點呢,但第二次工作就像一個魅力。儘管如果沒有展示五個元素,它就沒有那麼實用了,但現在是不可行的。謝謝! –