我正在构建一个Rails应用程序来跟踪组成员之间的开销/债务,比如说一个家庭。到目前为止,我有团队,用户和费用模型 - 基础知识。现在我试图找出组和用户之间的关联。例如,一个组可以有许多用户,并且一个用户可以拥有/属于多个组,所以我使用一个连接表来设置HABTM关联。但我很困惑,因为一个集团也可以有一个所有者,也是一个用户。这就是我现在:Rails - 对同一模型的多个关联
class Group < ActiveRecord::Base
has_and_belongs_to_many :users
has_one :owner, :class_name => "User"
end
class User < ActiveRecord::Base
has_and_belongs_to_many :groups
end
有目前在集团表中的owner_id场,但我发现了一个PostgreSQL错误column users.group_id does not exist
当我尝试做任何事情涉及group.owner
。我相当迷茫 - 在这里最好的方式来表示多个关联到同一模型的任何想法?
'HABTM'已经意味着该组有许多用户,对吧?所以这些用户中的一个也必须是“所有者”。你可以做的就是使用'has_many:through',并用一个字段来指定组的所有者。 – Zabba 2012-03-19 21:59:05