param丢失或值为空:user rails 4

当我尝试提交我的注册表单时,我收到以下错误。 param丢失或值为空:user

def user_params params.require(:user).permit(:name, :email, :password, :password_confirmation) end 

以下是要求:

 {"utf8"=>"✓", "authenticity_token"=>"YX0+4AeWlGWJiQZgbhV9cxi6TUCoibZfwh95BrK9iCQ=", "name"=>"asasa", "email"=>"asasas@asas.com", "password"=>"[FILTERED]", "confirm_password"=>"[FILTERED]", "commit"=>"Register"} 

以下是我的看法

   

那里没有params[:user] ,这就是错误告诉你的。 您是否希望您的参数看起来像这样?

 {"utf8"=>"✓", "authenticity_token"=>"YX0+4AeWlGWJiQZgbhV9cxi6TUCoibZfwh95BrK9iCQ=", "user" => {"name"=>"asasa", "email"=>"asasas@asas.com", "password"=>"[FILTERED]", "confirm_password"=>"[FILTERED]" },"commit"=>"Register"} 

(我添加了一些缩进以突出显示结构)。

如果是这样,那么您需要修改提交这些参数的表单。 使用form_for @user ,它会自动将输入标签的name属性设置为user[name]user[email]等,或者自己手动设置字段的名称, user[name]等。