0

ユーザーのためにDeviseを使用しています。そして、パスワードを変更するためにメールを送信した後、リダイレクトを変更したいと考えています。だから私は個人的なコントローラーusers/passwords_controllerを作成しました

 class Users::PasswordsController < Devise::PasswordsController

  def new
    super
  end

  # POST /resource/password
  def create
    self.resource = resource_class.send_reset_password_instructions(resource_params)

    if successfully_sent?(resource)
      respond_with({}, :location => after_sending_reset_password_instructions_path_for(resource_name))
    else
      respond_with(resource)
    end
  end

  def edit
    super
  end

  def update
    super
  end

  protected

    def after_sending_reset_password_instructions_path_for(resource_name)
      root_url
    end

    def assert_reset_token_passed
      if params[:reset_password_token].blank?
        set_flash_message(:error, :no_token)
        redirect_to root_url
      end
    end
end

問題は、コントローラーが「resource_params」を認識していないことです (「create」の最初の行にあります)。

私は本当に修正する方法がわかりません。リソースはどこに置くべきですか?

4

0 に答える 0