рельсы лучшая практика для многошаговой формы? - PullRequest
1 голос
/ 30 сентября 2011

Я хочу создать форму с множеством шагов в Rails 3. Я смотрел на ней эпизод с Railscasts, но я не чувствовал, что он использовал лучшие практики при создании формы. Я чувствовал, что это был неаккуратный способ выполнить задачу. Каков наилучший способ создания многошаговой формы с использованием лучших практик в рельсах?

1 Ответ

6 голосов
/ 30 сентября 2011

На ваш вопрос немного сложно ответить без дополнительной информации, и верным ответом будет подробное руководство (например, Railscast), а не ответ SO, но вот несколько советов, которые помогут вам в этом.

Существует два основных подхода к многоэтапным формам:

  1. Использование Javascript для отображения формы по битам

  2. Создание отдельных представлений и использование create / update или аналогичный для маршрутизации пользователя от одного к следующему.

У каждого метода есть свои преимущества, в зависимости от того, хотите ли вы поддерживать JavaScript, и каковы ваши требованияо сохранении данных между разделами.

Преимущества 1

  • Ускорение перехода пользователя от раздела к разделу (скрытие / отображение javascript происходит мгновенно)
  • Данные легко доступны по желанию пользователячтобы обратиться к предыдущему разделу
  • Упрощенные действия контроллера

Недостатки 1

  • Не будет работать для пользователей, которые не работают с JavaScript (и не прогрессивноздесь действительно возможно усовершенствование, за исключением отображения формы в виде огромного куска).
  • Потребуется предоставить навигацию на основе JavaScript для перехода от раздела к разделу (только недостаток, если вы новичок в .js)
  • Потребуется AJAX, если вы хотите сохранить информацию о пользователе между этапами.
  • Без AJAX и javascript пользователь рискует потерять много записей, если пользователь случайно нажал кнопку назад.кнопка и т. д.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...