gpt4 book ai didi

ruby-on-rails - 如何使用 factory_girl 创建同一类但具有不同数据的两个对象?

转载 作者:太空宇宙 更新时间:2023-11-03 16:26:20 25 4
gpt4 key购买 nike

我想使用 factory_girl 创建 2 条记录。一种是水果,第二种是蔬菜。我怎样才能做到这一点?我知道我可以做一个这样的:

FactoryGirl.define do
factory :category do
title ''
end
end

我还应该运行 create 或其他东西来保存数据吗?我试过两种方法。都报错了。

首先

FactoryGirl.define do
factory :category do
title 'fruits'
title 'vegetables'
end
end

第二

FactoryGirl.define do
factory :category do
title 'fruits'
end
factory :category do
title 'vegetables'
end
end

最佳答案

factory_girl 允许您覆盖工厂定义中的数据(或缺少数据)。你可以这样定义你的工厂

FactoryGirl.define do
factory :category
end

并在规范中像这样使用它:

create :category, title: 'fruits'
create :category, title: 'vegetables'

或者,您可以定义两个不同的工厂:

FactoryGirl.define do
factory :fruits_category do
title 'fruits'
end
factory :vegetables_category do
title 'vegetables'
end
end

像这样使用它们

create :fruits_category
create :vegetables_category

只将数据放在用户期望从工厂名称中获得的数据,以便测试易于理解。

关于ruby-on-rails - 如何使用 factory_girl 创建同一类但具有不同数据的两个对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24145476/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com