2014-02-26 28 views
1

我知道如何定义一个工厂当创建一个has_many关联:添加(has_many)关联到FactoryGirl.create?

factory :user do 
    name "John Doe" 
    factory :user_with_posts do 
     ignore do 
     posts_count 5 
     end 

     after(:create) do |user, evaluator| 
     create_list(:post, evaluator.posts_count, user: user) 
     end 
    end 
    end 

但我会怎么做,当我实际创建工厂,如:

Factory.create(:user, :posts << ??) 

回答

1

一种方法是使用这样一个块:

FactoryGirl.create(:user) do |user| 
    FactoryGirl.create_list(:post, 10, user: user) 
end