Помогите настроить форму Webform. В поле типа select сделать выбор терминов из словаря таксономии с иерархией. Drupal 7.

Аватар пользователя Motorvideo Motorvideo 12 февраля 2012 в 14:43

Здравствуйте, коллеги. Делаю в Drupal 7 форму модуля Webform в которой пользователь будет вводить марку автомобиля. Создал словарь таксономии в котором 13тыс. марок автомобилей. Собрался вывести его в поле типа select/выпадающий список. И не могу.

Нашел первое решение. Модуль Webform Term Options [module=webform_term_opts] Этот модуль при создании поля типа select предлагает загрузить в качестве выпадающего списка любой имеющийся словарь таксономии. Но иерархию он не делает. Просто заполняет поле Опции значениями из словаря в виде "свой_ключ | термин_выбранного_словаря". И более того, он не хочет сохранять настройки поля в котором 13 тыс. значений выпадающего списка. Ведь у меня в словаре очень много марок автомобилей.

Мне бы вставить термины с сохранением иерархии. В моем случае иерархия это Марка >> модель. Например: Audi >> A4, Audi >> A6. Прошу, пожалуйста, помочь советом.

Комментарии

Аватар пользователя Motorvideo Motorvideo 13 февраля 2012 в 19:08

Есть вариант не пользоваться webform вообще. Разрешить пользователю создавать ноды определенного типа. Создать правила, события, чтобы на почту эти ноды отправлять. Но я пока рассчитываю на webform плюс решение в виде модуля, хука или views.

Аватар пользователя Motorvideo Motorvideo 15 февраля 2012 в 15:18

Еще можно использовать модуль [module=webform_conditional] Он создает зависимые поля в форме. Но тогда придется создавать столько словарей с моделями, сколько марок автомобилей. Потом эти словари включать в опции выпадающего списка модулем Webform Term Options. Есть предложения ?

Аватар пользователя Motorvideo Motorvideo 25 марта 2012 в 11:59

Помню про задачку и способ создания хука для модуля Webform, который предложил Kation. Планирую вернуться к этому проекту и если все получиться, напишу.

Аватар пользователя Antoniy Antoniy 7 мая 2013 в 19:22

Можно вывести через views термины словаря, а в поле "имя термина" переопределить значение, чтобы при нажатии отправлялся POST или GET запрос в поле webform "Марка авто", а в самом этом поле выставить по умолчанию %get, или %post. При выполнении заказа посылать сначала на этот views. Заморочено. Но по моему для посетителя будет более наглядно выбирать одно из 13000 значений на отдельной странице, чем в селекте.