Применить form_hook к моей форме - PullRequest
0 голосов
/ 14 декабря 2011

Если ловушка называется hook_field_settings_form($field, $instance, $has_data), мой модуль называется mymodule. Как я могу использовать этот хук в моей форме?
Я бы предположил mymodule_field_settings_form($field, $instance, $has_data). Но это поле адреса (<div class="myformclass" id="myformid">) в форме. Как я могу применить эту функцию только к моему адресному полю?

EDIT
То, чего я пытаюсь достичь, это следующее. У меня есть страница создания контента, и на этой странице вы можете заполнить адрес. Я хочу сделать некоторые поля этого адреса обязательными, а некоторые - не обязательными. Итак, я понял, мне нужен hook_field_settings_form -крюк ... Правильно?

Ответы [ 2 ]

3 голосов
/ 14 декабря 2011

вы можете использовать hook_form_alter

Я использовал это сам, чтобы сделать поле заголовка необязательным, поскольку я не хотел, чтобы оно было видимым. Важно использовать оператор if, иначе он попытается изменить каждую загружаемую форму. Я не уверен, какая у вас версия drupal, но это drupal 7, хотя другие версии очень похожи.

/**
 * 
 * Form Alter Widget
 * 
 */
 function mymodule_form_alter(&$form, &$form_state, $form_id) {
  if($form_id == 'myformid') {
    $form['title']['#required'] = false;
  }
}
1 голос
/ 14 декабря 2011

Я думаю, что вы имеете в виду hook_form_FORMID_alter. Обратите внимание, что идентификатор формы находится между формой и изменением.

...