【问题标题】:Devise 3.0.0rc custom attributes and strong parameters in Rails 4在 Rails 4 中设计 3.0.0rc 自定义属性和强参数
【发布时间】:2013-07-13 15:38:19
【问题描述】:

我使用基于devise_parameter_sanitizerthis 解决方案为我的Devise(用户)模型设置了一些自定义属性,并使其在注册和编辑表单中可用。

一切正常,但有时(而且经常发生)特别是当我登录、注销或编辑用户时(所以我认为问题与会话有关),我收到以下错误:

我可以在上面的代码中添加任何逻辑来呈现这个问题吗?

【问题讨论】:

  • 那么您是否将User::ParameterSanitizer 类添加到您的应用程序中?

标签: devise ruby-on-rails-4 strong-parameters uninitialized-constant


【解决方案1】:

我知道这是不久前的事情,但想在这里给出答案,因为这实际上花了我一些时间来解决,其他人可能也有类似的问题。

因为您在更改应用程序控制器或任何会导致它重新加载(因为您处于调试模式)时使用初始化程序来加载 User:ParameterSanitizer,所以初始化会丢失。

这很容易测试以确认这是发生在您身上的事情: 首先:重新启动服务器并转到您的登录页面:应该可以工作。 下一步:修改 application_controller.rb (只需在某处放一个空格并点击保存) 下一步:再次访问您的登录页面(不再工作):(

【讨论】:

  • 是的,你是对的。所以这只是在调试模式下发生还是我必须担心生产?
  • 它只会在调试中发生,因为在生产中它不会即时重新加载代码。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-04-14
  • 1970-01-01
  • 1970-01-01
  • 2012-12-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多