我想使用Factory Girl生成大量模型集合,每個模型只有一個或兩個屬性。克隆工廠女孩的模型?
有沒有辦法讓工廠接受模型的實例?理想情況下,我想
before(:all) do
data1 = create(:instance,
:attribute_1 => 1,
:attribute_2 => 2,
:attribute_3 => "something",
:attribute_4 => "something else",
:attribute_5 => 5
...
)
data2 = create(:instance,
:attribute 2 => 15,
base: data1
)
end
數據2將作爲數據1的克隆被初始化,並且我可以指定新的屬性,我想改寫。
我一直在使用臨時屬性,但不能找到一種方式來實現類似的嘗試:
FactoryGirl.define do
factory :instance do
ignore do
base nil
end
attribute_1 { base.nil? ? argument.attribute_1 : base.attribute_1 + argument.attribute_1 }
attribute_2 { base.nil? ? argument.attribute_2 : base.attribute_2 + argument.attribute_1 }
...
end
end
上午,我在完全錯誤的方式接近這一點?
你想保持對模型的相同的關聯,同時改變那幾個屬性? – Zabba
在這種情況下,我沒有任何關聯,在更廣泛的事物中,我可以想象既保存它們又不保留它們的情況。我還沒有調查工廠女孩管理協會的成語。 – ayang