【发布时间】:2016-07-19 02:23:12
【问题描述】:
我刚刚将设计添加到我闪亮的新 Rails 5 应用程序中。在我尝试将用户名添加到 Devise 用户模型之前,一切都很好。一切正常,直到我运行它并转到localhost:3000/users/sign_up,在那里我遇到了这个错误:
undefined method `for' for #<Devise::ParameterSanitizer:0x007fa0dc31c1b0> Did you mean? fork
我已经在 Google 的好地方搜索了任何结果,只是给出了过时的 Rails 4 错误和解决方案,搜索 Stack Overflow 本身也是如此。我无法下定决心找到可行的解决方案。我非常感谢帮助。以下是我为此做的准备:
- 创建迁移:
rails generate migration add_username_to_users username:string:uniq - 迁移数据库
rake db:migrate - 为应用控制器添加强参数
devise_parameter_sanitizer.for(:sign_up) { |u| u.permit(..) } - 将用户名参数添加到设计视图
- 重启服务器
我有什么遗漏或做错了吗?
【问题讨论】:
-
你试过 .permit 方法了吗
devise_parameter_sanitizer.permit().for 方法已被弃用,现在它是来自设计 4.1+ 的 .permit