我不知道如何搜索这个答案,所以我会继续问它。如何在Rails视图中访问不同的对象集合?
在我的rails项目中,我有一个用户模型和一个foo模型。用户可以为其分配一个或多个foo模型。我已经通过添加
has_many :foo, :through => :user_foo
在我的用户模型中。
现在,在我看来,我想显示所有foos的列表。不只是那些被选中的人(我将制作这些单选按钮,但这是另一个问题)。当我尝试这样做(是的,我使用HAML):
- for foo in @foos
我得到这个错误:
You have a nil object when you didn't expect it!
You might have expected an instance of Array.
The error occurred while evaluating nil.each
我的假设是,这是造成的,因为在@foos集合为空。在我的用户视图中访问此集合的正确方法是什么?
**编辑**
我想我最初的问题是有点混乱。我试图找出的第一个问题是如何从我的用户视图中访问foos的集合。这种关系并不重要。我只想要一个系统中所有foos的列表。不只是分配给用户的那些。
我没有在我的FOO模型。现在我已经添加了它,我得到这个错误: 无法找到关联:user_foo模型用户 在我的foo模型中,它应该是belongs_to:user_foo然后在user_foo中它应该说belongs_to:foo?这似乎并不正确 – 2008-11-15 18:00:53