#drupal #drupal-modules #wizard
#drupal #drupal-модули #мастер
Вопрос:
Я работаю над пользовательским модулем в Drupal с подходом многостраничной формы, и я хотел бы иметь визуализацию шагов.
Шаг 1> [_Step_2_] > Шаг 3 > Готово
Бизнес-правила:
- они всегда видят все шаги и тот шаг, на котором они находятся сейчас
- они могут вернуться к любому завершенному шагу
- но они не могут перейти к шагу, скажем, к шагу 2, если они не завершили шаг 1
Q1: Какой лучший / наиболее корректный для Drupal или интуитивно понятный для Drupal способ реализовать это?
Я немного осмотрелся и нашел это :
Q2: Это хороший вариант? Похоже, что здесь они используют систему hook_menu ( MENU_LOCAL_TASK) — как бы мне запретить пользователю переходить к шагам?
Ответ №1:
Другой способ сделать это — с помощью переменных функций. Смотрите
http://www.benjeavons.com/multi-step-forms-drupal-6-using-variable-functions (D6) http://growingventuresolutions.com/blog/drupal-7-multistep-forms-using-variable-functions (D7)
Вы также можете использовать мастер форм в Chaos Tools, который использует тот же подход, хотя я сам никогда им не пользовался.
Ответ №2:
Существует модуль под названием webform
, который, как я полагаю, предоставляет эту функциональность «из коробки». Вы могли бы использовать webform
узел для реализации вашей многоступенчатой формы, а затем обработать отправку в вашем модуле.
Комментарии:
1. Ответы формы Webform не хранятся в виде узлов, поэтому вы должны знать об этом, прежде чем выбирать Webform для проекта. При этом модуль Webform довольно хорош, и да, он поддерживает многоступенчатые формы «из коробки».