Как добавить текстовое поле с несколькими значениями в форму Drupal? - PullRequest
1 голос
/ 09 мая 2011

Возможно ли и как реализовать одно текстовое поле с несколькими значениями в форме drupal?

Скажи, у меня есть следующий код:

function mymodule_admin_settings() {
  $form['email'] = array(
    '#type' => 'fieldset',
    // ...
  );
  $form['email']['mymodule_email_recepient'] = array(
    '#type' => 'textfield',
    '#title' => t('Recepient'),
    '#default_value' => variable_get('mymodule_email_recepient', 'email@domain.com'),
    '#element_validate' => array('mymodule_email_validation'),
    '#maxlength' => 30,
    '#required' => TRUE,
  );
  // ...
  return system_settings_form($form);
}

Что я должен изменить для этой формы

  1. для отображения нескольких текстовых полей, например

    <input name="mymodule_email_recepient[]" type="text" />;

  2. для вызова variable_set('mymodule_email_recepient', array( /*some values*/ )) при отправке.

Спасибо за продвижение!

1 Ответ

1 голос
/ 11 октября 2011

Я искал что-то похожее сегодня, и решение, которое я использовал, может быть достаточно для вас.

Используя модуль CCK, я создал тип контента, предназначенный только для полей защиты, которые должны использоваться в моем пользовательском модуле.

Чем я создал поле cck (в моем случае это поле автоматического создания nodereferente) внутри этого типа контента.

Наконец, я вставил существующее поле CCK в свою пользовательскую форму, используя следующий совет: http://coder1.com/articles/adding-cck-field-to-custom-form

Надеюсь, это поможет.

...