Здраствуйте. Решил окунутся в мир Drupal и появилась необходимость написать модуль. Модуль должен выводить форму. Для этого использовал Form API. Вот код функции:
function regions_form($form, $form_state) {
/*Cities select Form*/
$form['inCity'] = array(
'#type' => 'select',
'#options' => get_regions_list(),
'#empty_option'=>t(variable_get('selectedCity')),
'#attributes' => array('onchange' => "form.submit('inCity')"),
);
/*Hidden submit Form element*/
$form1['submit'] = array(
'#type' => 'submit',
'#value' => t('Submit '),
'#attributes' => array('style' => 'display: none;'),
);
return $form;
}
Однако заметил странную вещь. Дання функция вызывается 7 раз !!!! Ответа в гугле не нашел. Решил спросить на форуме. Почему такое количество вызовов функции для одного запроса?
Спасибо.
Комментарии
ставьте devel, добавляйте ddebug_backtrace() (или другим способом получите стек вызовов) в функцию с формой и смотрите, где вызывается ваша форма. Тут еще много зависит от того, где форма расположена - на кастомной странице, в блоке или еще где.