2014-02-12 127 views
0

我有两个模型,名为用户和电子邮件。用户有很多电子邮件,并且电子邮件属于用户。我打开控制台,我有这样的:控制台工作,服务器不是

> user = User.find(3) 
> user.email[1].confirmed? 
false 

一切正常在我的控制台,但在服务器上,电子邮件[1]是零:NilClass,我已经检查了它的存在和用户确实存在。这里发生了什么....?

类似的东西表明这是一个方法问题(忘记[范围?]这个词)公共或私人的东西......呃但我不知道是不是这样?这可能是什么?

+0

你能发布你的错误堆栈跟踪 – bjhaid

+0

找不到方法“确认吗?”在零:NilClass – user3180221

+0

从错误消息'电子邮件[1]'是'无' – bjhaid

回答

0

你的代码更改为以下:

user.email[1].try(:confirmed?) 

这只不过是相当于检查存在,并调用一个方法,如果有一个对象。

+0

我认为OP是说用户应该存在,但不是在一个环境中。 –

+0

我认为那是行得通的,因为它像我预期的那样通过了原始代码,但为什么? – user3180221

+0

@DaveNewton不,不是 – user3180221

相关问题