wicked gem - динамически добавлять шаги на основе предыдущих выборов

Как можно реализовать wickard для злых драгоценных камней и динамически добавлять шаги: - первый шаг => выбрать страну - второй шаг => выбрать выбрать город - другой шаг => отобразить списки магазинов на основе предыдущих 2 выборов.

Кажется, мы можем добавить это в контроллер так:

before_action :set_steps
before_action :setup_wizard
...
private
def set_steps
  if params[:flow] == "twitter"
    self.steps = [:ask_twitter, :ask_email]
  elsif params[:flow] == "facebook"
    self.steps = [:ask_facebook, :ask_email]
  end
end

Но мне интересно, возможно ли создать не новый массив шагов, а добавить новые к предыдущим, например:

self.steps << Shop.some_query_based_on_country_and_city

Более того, во всех примерах вы точно знаете имена шагов и их содержание, поэтому у вас есть страница на шаг. Как это сделать, если содержание одинаковое, но имеется много идентичных этапов содержания (например, вопросы для ответа)?

Любая идея? Спасибо.

0 ответов

Другие вопросы по тегам