Многоступенчатая форма в Rails

Я делаю многошаговую форму в Rails 3.2, проблема в том, что я вижу поля, сгенерированные в процессе регистрации, но я не могу обновить их на втором этапе. Я просмотрел видео Райана Бейтса, но мое немного сложное. Основные поля разработки работают нормально, но те, которые я добавил с помощью миграции, показывают нулевое значение. Я также определил эти поля в attr_accessible в своей модели. Ниже приведен код моего контроллера для сохранения данных на втором этапе: -

class Users::AfterSignupController < ApplicationController
  include Wicked::Wizard

  steps :step_1

   def show
    @user = current_user
    render_wizard
  end

  def update
    @user = current_user
    render_wizard
  end

  private

  def redirect_to_finish_wizard
    redirect_to root_url, notice: "Thank you for signing up."
  end


end

С нетерпением жду полезных предложений, поскольку код предполагает, что я использовал Wicked gem для многоэтапной реализации. Но если кто-нибудь может помочь мне сделать это обычным рельсовым способом, тогда я тоже за это. Заранее спасибо .


person Community    schedule 26.06.2014    source источник


Ответы (1)


Я нигде не вижу, где вы сохраняете пользователя на этапе обновления. Как указано в документации мастера, если вы передаете объект render_wizard, он перейдет к следующему шагу мастера, если объект сохранится, или останется на текущем шаге, если произойдет сбой. Итак, что-то вроде этого должно выполнять сохранение

def update
  @user = current_user
  render_wizard @user
end
person user3780079    schedule 26.06.2014