私はDeviseで遊び始めましたが、Michael HartlチュートリアルのようにRailsで直接認証したときの自由がなかったと思いました。それから、私のDeviseモデル 'クライアント'用のDeviseコントローラを生成しました。私はそれで少し遊ぶことができるように:が生成されました。Devitsコントローラが空です
rails generate devise:controllers clients
結果が空のコントローラーですが:
class Clients::RegistrationsController < Devise::RegistrationsController
# before_action :configure_sign_up_params, only: [:create]
# before_action :configure_account_update_params, only: [:update]
# GET /resource/sign_up
# def new
# super
# end
# POST /resource
# def create
# super
# end
# GET /resource/edit
# def edit
# super
# end
# PUT /resource
# def update
# super
# end
# DELETE /resource
# def destroy
# super
# end
# GET /resource/cancel
# Forces the session data which is usually expired after sign
# in to be expired now. This is useful if the user wants to
# cancel oauth signing in/up in the middle of the process,
# removing all OAuth session data.
# def cancel
# super
# end
# protected
# If you have extra params to permit, append them to the sanitizer.
# def configure_sign_up_params
# devise_parameter_sanitizer.permit(:sign_up, keys: [:attribute])
# end
# If you have extra params to permit, append them to the sanitizer.
# def configure_account_update_params
# devise_parameter_sanitizer.permit(:account_update, keys: [:attribute])
# end
# The path used after sign up.
# def after_sign_up_path_for(resource)
# super(resource)
# end
# The path used after sign up for inactive accounts.
# def after_inactive_sign_up_path_for(resource)
# super(resource)
# end
end
は、だから私たちはただのコントローラから継承取得し、本物の工夫コントローラは、すべてにアクセスすることはできないと思います本当の隠されたDeviseコントローラ?
この質問はおそらく役に立ちます。http://stackoverflow.com/questions/3546289/override-devise-registrations-controller –
はいこのスレッドを読む。私は、Deviseモデルコントローラを生成すると、実際のコントローラを稼働させると考えていました。しかし、空の継承されたコントローラを作成するだけです。全体的に私は、電子メールの確認など多くのことを簡素化しているにもかかわらず、Deviseのイベントに対処するのはかなり難しいと感じています。 – Maxence
はい、私は最初もそのように感じました。今私はそれを愛する。ハッピーコーディング。 –