J'obtiens l'erreur suivante lorsque j'essaie de soumettre mon formulaire d'inscription. param est manquant ou la valeur est vide: utilisateur
def user_params
params.require(:user).permit(:name, :email, :password, :password_confirmation)
end
Ci-dessous la demande:
{"utf8"=>"✓",
"authenticity_token"=>"YX0+4AeWlGWJiQZgbhV9cxi6TUCoibZfwh95BrK9iCQ=",
"name"=>"asasa",
"email"=>"[email protected]",
"password"=>"[FILTERED]",
"confirm_password"=>"[FILTERED]",
"commit"=>"Register"}
Voici ma vue
<%= form_tag users_path, class: "form-horizontal", id: "signupform" do %>
<%= end %>
il n'y a pas params[:user]
voilà, c'est ce que l'erreur vous dit. Vous attendez-vous peut-être à ce que vos params ressemblent à ça?
{"utf8"=>"✓",
"authenticity_token"=>"YX0+4AeWlGWJiQZgbhV9cxi6TUCoibZfwh95BrK9iCQ=",
"user" => {"name"=>"asasa",
"email"=>"[email protected]",
"password"=>"[FILTERED]",
"confirm_password"=>"[FILTERED]"
},"commit"=>"Register"}
(J'ai ajouté une indentation pour mettre en évidence la structure).
Si c'est le cas, vous devez modifier le formulaire qui a soumis ces paramètres. Utilisez soit form_for @user
, qui définira automatiquement les attributs name
des balises d'entrée sur user[name]
, user[email]
etc, ou définissez manuellement les noms de champ vous-même, sur user[name]
etc.