gpt4 book ai didi

ruby-on-rails - has_many 和 belongs_to 协会在 factory_girl

转载 作者:数据小太阳 更新时间:2023-10-29 06:39:35 30 4
gpt4 key购买 nike

我有这些模型,我正在尝试创建工厂以使用 factory_girl。

class Foo < ActiveRecord::Base
belongs_to :baz
end

class Baz < ActiveRecord::Base
has_many :foos
end

我不确定如何在不创建工厂无休止地相互调用的循环的情况下创建工厂。

Factory.define :foo do |f|
f.after_create do |ff|
ff.baz = Factory(:baz)
end
end

Factory.define :baz do |f|
f.after_create do |ff|
ff.foos = [Factory.create(:foo)]
end
end

我意识到我可以在 baz 工厂中省略 ff.foos = [Factory.create(:foo)],但是在我的 baz 中 测试 我被迫使用 foo.baz 而不是仅仅使用 baz。我是否被迫在测试中通过从 foo 工厂中获取 baz 对象来使用它?或者有更好的方法吗?

最佳答案

请参阅 the Getting Started guide关联部分

已添加

因此,您需要使用该部分中的语法,即。在您的 Foo 声明中,您需要:

Factory.define :foo do |f|
f.association :baz
end

belongs_to 关联不需要after_create

关于ruby-on-rails - has_many 和 belongs_to 协会在 factory_girl,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6600742/

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