Après avoir créé un enregistrement d'utilisateur et un écran de connexion avec l'appareil Cette méthode est utilisée lorsque vous souhaitez vous inscrire / vous connecter avec des informations autres que celles par défaut (e-mail).
J'ai modifié le formulaire sur la page d'affichage, mais il y a un piège que je ne peux pas enregistrer ou connecter. se il vous plaît se référer.
Dans les cas suivants, les clés de sing_up et account_update sont modifiées.
app/controllers/application.controller.rb
class ApplicationController < ActionController::Base
before_action :configure_permitted_parameters, if: :devise_controller?
protected
def configure_permitted_parameters
if resource_class == User
devise_parameter_sanitizer.permit(:sign_up, keys: [:name,:email])
devise_parameter_sanitizer.permit(:sign_in,keys:[:email])
devise_parameter_sanitizer.permit(:account_update,keys:[:name,:email])
end
end
end
defore _action
before_action :configure_permitted_parameters, if: :devise_controller?
before_action est une sorte de filtre, qui est exécuté pour tous les contrôleurs en l'écrivant dans application.contoller.
: devise_contoller? est l'une des méthodes d'aide qui peuvent être créées lors de la génération de devise. Si vous souhaitez passer à l'écran lié à l'appareil. Cela lancera configure_permitted_parameters sur chaque écran de l'appareil.
Cela signifie que s'il s'agit d'un contrôleur de périphérique (si la valeur de retour de la méthode devise_controller? Est vraie), il appellera configure_permitted_parameters.