有人可以提供一个例子或指出我可以在哪里学习如何做Factory Girl嵌套模型关联吗?
线程必须至少有一个ThreadParticipation
现在我在factories.rb中有我的主题如下:
Factory.define :thread do |thread|
thread.title "mythread"
end
如何创建ThreadParticipation?
由于
答案 0 :(得分:3)
factory_girl来源中的Getting Started file包含有关关联的信息。
可以生成关联实例 通过使用关联方法时 定义一个惰性属性:
factory :post do # ... author end
您还可以指定其他内容 工厂或覆盖属性:
factory :post do # ... association :author, :factory => :user, :last_name => 'Writely' end
所以,在你的实例中,我会想象这样的事情会发生:
Factory.define :thread do |thread|
thread.title "mythread"
thread.thread_participation
end
Factory.define :thread_participation do |ppn|
ppn.attribute "value"
end
如果您使用的是集合而不是has_one
/ belongs_to
关联,则可以创建一个数组:
Factory.define :thread do |thread|
thread.title "mythread"
thread.thread_participations { |a| [a.association(:thread_participation)] }
end