考虑以下情况
class User < ActiveRecord::Base
has_and_belongs_to_many :companies
end
class Company < ActiveRecord::Base
has_and_belongs_to_many :users
end
如何为公司和用户定义具有双向关联的工厂?这是我的尝试
Factory.define :company do |f|
f.users{ |users| [users.association :company]}
end
Factory.define :user do |f|
f.companies{ |companies| [companies.association :user]}
end
现在我尝试
Factory :user
或许并不令人意外,这将导致无限循环,因为工厂递归地使用彼此来定义自己。
更令人惊讶的是,我在任何地方都没有找到如何解决此问题的提及,是否存在定义必要工厂的模式,或者我正在做一些根本性错误?