Ruby on rails 控制台工作,服务器不工作

Ruby on rails 控制台工作,服务器不工作,ruby-on-rails,ruby,activerecord,rails-activerecord,Ruby On Rails,Ruby,Activerecord,Rails Activerecord,我有两种型号,命名用户和电子邮件。用户有许多电子邮件,电子邮件属于用户。我打开我的控制台,我看到: > user = User.find(3) > user.email[1].confirmed? false 在我的控制台中,一切正常,但在服务器上,email[1]为nil:NilClass,我已经检查了它的存在,并且用户确实存在。这是怎么回事 类似的情况表明这是一个方法问题(忘记了[scope?]这个词)公共或私人的事情。。。呃,但我不知道是不是这样?这可能是什么?将代码更改为

我有两种型号,命名用户和电子邮件。用户有许多电子邮件,电子邮件属于用户。我打开我的控制台,我看到:

> user = User.find(3)
> user.email[1].confirmed?
false 
在我的控制台中,一切正常,但在服务器上,email[1]为nil:NilClass,我已经检查了它的存在,并且用户确实存在。这是怎么回事


类似的情况表明这是一个方法问题(忘记了[scope?]这个词)公共或私人的事情。。。呃,但我不知道是不是这样?这可能是什么?

将代码更改为以下内容:

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

这仅仅相当于检查是否存在并在存在对象时调用方法。

您能否在错误消息
电子邮件[1]
中的nil:nilclass中发布您的错误stacktraceMethod not found“confirmed?”吗?相同的环境(开发、生产等?)不是沙箱?您确定id=3的用户至少有两封电子邮件吗?运行以下命令:User.find(3).email.size我认为OP是说该用户应该存在,但在其中一个环境中不存在。我认为这是可行的,因为它通过了我预期的原始代码,但为什么?@DaveNewton没有not@user3180221那么你需要更好地描述这个问题。User.find(3)是User.find(3)。如果用户存在于服务器上,但不存在于控制台上,并且没有其他不同之处,那么就有问题了。