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
Более того, во всех примерах вы точно знаете имена шагов и их содержание, поэтому у вас есть страница на шаг. Как это сделать, если содержание одинаковое, но имеется много идентичных этапов содержания (например, вопросы для ответа)?
Любая идея? Спасибо.