在Rails 5我有我的模型设置是这样的:轨5有许多模式
User
has_many :events, :through => :participants
Event
has_many :participants
has_many :users, :through => :participants
Participant
belongs_to :user
belongs_to :event
当我创建一个事件,我送user_ids和新的参与者而成。
但是,现在当我想创建新事件时,可能还没有创建特定的用户。
什么是一种很好的模式来检查用户是否不存在,然后在将用户ID添加到事件之前创建所述用户?
user = User.find_or_create_by(email: email) event.users << user
应该在哪里发生的呢?
一个建议,使用'通过::参与者'而不是':通过=>:参与者' – dendomenko