ruby-on-rails - 参数缺失或值为空 : user rails 4

标签 ruby-on-rails ruby ruby-on-rails-4

当我尝试提交注册表时出现以下错误。 参数缺失或值为空:用户

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"}

下面是我的看法

<%= form_tag users_path, class: "form-horizontal", id: "signupform" do %>

<%= end %>

最佳答案

那里没有 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]

关于ruby-on-rails - 参数缺失或值为空 : user rails 4,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24243253/

相关文章:

javascript - 我如何在 ruby​​ on rails 中创建投票上下按钮,如 stackoverflow?

ruby-on-rails - Rails应用程序变量生命周期问题

ruby-on-rails - ActiveRecord 事务没有回滚整个事务

ruby - 如何生成六种随机的十六进制颜色并将它们放入 Ruby 数组中?

ruby-on-rails - 设备确认后自动登录

ruby-on-rails - Rails 4 - 无需身份验证的 Json 渲染

ruby-on-rails - 样式echarts - 无法修改标题颜色

ruby-on-rails - 这些奇怪的字符是什么意思?

ruby-on-rails - Ruby on Rails 4 和 cocoon gem : How to interrupt deletion on cocoon:before-remove

ruby-on-rails - Rails 4 不检测应用程序