【发布时间】:2011-12-12 10:26:59
【问题描述】:
我正在使用此处链接中详述的指南向我的应用程序添加访客用户功能:https://github.com/plataformatec/devise/wiki/How-To:-Create-a-guest-user
我已按照这些步骤操作,现在正尝试在我的一个控制器中访问来宾。由于这个控制器继承自ApplicationController,我的想法是我应该能够像这样访问guest_user 方法
@user = guest_user
我这样做是为了在我的视图中显示来宾用户的 ID。我在上面代码所在的控制器方法中做了skip_before_filter步骤。
当我尝试运行它时,我收到以下错误:undefined method '[]' for false:FalseClass。我一直试图找出问题所在,但没有成功。
我尝试注释掉
u.save(false)
错误变成了:Couldn't find User without an ID 和伴随的ActiveRecord::RecordNotFound in [controller]。所以我相信这意味着问题出现在session[:guest_user_id]?提前致谢。
我正在使用 rails 3.1.1、formtastic 2.0.2 和 devise 1.5.1
【问题讨论】:
-
回溯说什么?哪一行代码导致了问题?
-
@andrewpthorp 它显示 u.save(false) 导致问题
标签: ruby-on-rails devise