2012-02-08 44 views
1

如果我想要做這樣的事情FactoryGirl和廠內變量

FactoryGirl.define do 
    factory :leaf do 
    end 

    factory :tree do 
    l = [] 
    leaves do 
     l << Factory.build(:leaf) 
     //some app logic here 
     l 
    end 
    root l.first 
    end 
end 

我應該如何寫這使它工作?

也許有人與使用FactoryGirl的真正複雜和平凡的例子鏈接?

謝謝。

回答

1

我不是100%確定我跟着你問了,但會這樣工作嗎?

factory :tree do 
    after_build { |tree| 
     # build your leaves here 
     # ... 

     tree.root l.first 
    } 
end 
+0

是的,一個好主意。謝謝。 – Ximik 2012-02-08 08:50:17