Rails的belongs_to的关联,不能访问所有者的属性集合的时候一部分?
-
18-09-2019 - |
题
我有一个对象,球,这belongs_to的一个女孩,其可以have_many球。一切工作的大部分,但如果我尝试打印出来的女孩的名字通过:
@balls.each do |b|
b.girl.name
end
我得到以下错误:
"undefined method `name' for nil:NilClass"
这实际上混淆了我。如果我说b.girl.class,我把它作为女孩的实例,就好了。也就是说,它不是 “NillClass”。
不仅如此,如果我只是尝试任何球,并说
@ball.girl.name
我完全细
这是关于球的集合,被拧我?
编辑:
具体而言这是发生在我的视图。我现在做的测试,看看它是否发生在控制器了。
解决方案
您有Ball
的一个实例,其不具有相关联的Girl
。你要检查,以确保girl
没有在访问她nil
属性之前name
。
@balls.each do |b|
b.girl.name unless b.girl.nil?
end
其他提示
Dangit,没关系,没关系。问题是,由于某种原因,一些球对象实际上没有女生(尽管大多数人没有,这样任何给定的球我想工作的罚款,但如果我试图做所有的人,其中一人会失败,并认为错误只是让我知道出事了,不要在那里)
不隶属于 StackOverflow