我想知道是否有办法用rails做这个。基本上我有一个用户模型和一个事件模型。事件由用户创建,我希望在事件模型中具有指示谁创建事件的外键(user_id)。此外,事件可以有许多用户参与其中,因此事件模型变为类似
belongs_to :user
has_many :users, :through => :guests #suppose i have the guest model
,用户模型类似于
has_many :events, :through => :guests
我还没有尝试过这个协会,但我希望能够说
e = Event.find(1)
e.creator #returns the user who created this event
而不是
e.user
有没有办法让我这样做?
答案 0 :(得分:13)
只需将一些选项传递给belongs_to
:
belongs_to :creator, :class_name => "User", :foreign_key => "user_id"
这指定creator
方法将是User
对象,引用user_id
字段。