gpt4 book ai didi

设计参数 sanitizer "For"方法未找到 Rails 5

转载 作者:行者123 更新时间:2023-12-01 13:42:53 24 4
gpt4 key购买 nike

我刚刚在我 Shiny 的新 Rails 5 应用程序中添加了设计。在我尝试将用户名添加到 Devise 用户模型之前,一切都很好。一切正常,直到我运行它并转到 localhost:3000/users/sign_up ,我遇到了这个错误:

undefined method `for' for #<Devise::ParameterSanitizer:0x007fa0dc31c1b0> Did you mean? fork

我在 Google 的美妙地方搜索了任何结果,只给出了过时的 Rails 4 错误和解决方案,搜索 Stack Overflow 本身也是如此。我无法找到可行的解决方案。非常感谢帮助。以下是我为此做的准备:

  1. 创建迁移:rails generate migration add_username_to_users username:string:uniq
  2. 迁移数据库rake db:migrate
  3. 向应用程序 Controller 添加强参数 devise_parameter_sanitizer.for(:sign_up) { |u| u.permit(..) }
  4. 将用户名参数添加到设计 View
  5. 重启服务器

有没有我遗漏或做错了什么?

最佳答案

.for 方法已弃用,从 devise 4.1+ 开始,.permit 方法可用

试试 .permit。 它应该可以工作。

devise_parameter_sanitizer.permit(:my_action) { |u| u.permit(..) }

希望这对你有帮助:)

关于设计参数 sanitizer "For"方法未找到 Rails 5,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38448598/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com