Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Rails—我可以在控制台中访问对象,但不能在应用程序中访问_Ruby On Rails_Ruby On Rails 4_Rails Activerecord - Fatal编程技术网

Ruby on rails Rails—我可以在控制台中访问对象,但不能在应用程序中访问

Ruby on rails Rails—我可以在控制台中访问对象,但不能在应用程序中访问,ruby-on-rails,ruby-on-rails-4,rails-activerecord,Ruby On Rails,Ruby On Rails 4,Rails Activerecord,UserNotification属于用户,并且用户拥有多个UserNotification 我正在尝试通过用户访问通知。如果我在控制台中运行: User.find(31).user_notifications 它返回以下用户: <Employer id: 31, email: "person1@commercial.com", ...> 我被告知: undefined method `user_notifications' 这将为我提供与上面使用的“find”方法相同的用户。在

UserNotification属于用户,并且用户拥有多个UserNotification

我正在尝试通过用户访问通知。如果我在控制台中运行:

User.find(31).user_notifications
它返回以下用户:

<Employer id: 31, email: "person1@commercial.com", ...>
我被告知:

undefined method `user_notifications'
这将为我提供与上面使用的“find”方法相同的用户。在我的应用程序中,当使用当前用户时,我在引用用户通知时遇到了相同的问题。例如,我有:

@notifications = current_user.user_notifications.inspect
我是以控制台中的用户31的身份登录的。但是,用户通知显示为nil


如何通过当前用户访问用户通知?

。其中
返回一个数组。因此,当您使用它时,您需要指定您想要的结果:

User.where(email: 'person1@commercial.com').first.user_notifications

有关详细说明,请参阅此问题:

谢谢,这解决了控制台问题。为什么呢?我肯定只有一个用户具有该电子邮件地址?谢谢,我如何让它在当前用户的应用程序中工作?我认为您必须提供更多代码,例如如何返回
当前用户
?如果您使用
where
获得
当前用户
,情况也一样。我不确定当前用户是Deave的助手。这很奇怪,如果您使用Deave,它应该在没有
的情况下工作。首先
。我唯一能想到的是,当你调用当前用户时,你还没有用
user\u notifications
属性保存模型,所以它还不存在。
User.where(email: 'person1@commercial.com').first.user_notifications