我正在实施 Factory Girl 来替代我的 Rails 应用程序中的固定装置。我有几个表,我试图用关联来表示。然而,为了在循环中抛出一个扭结,除了定义关联之外,我还需要从父工厂访问子工厂的属性。
下面是我正在尝试做的一个例子:
- Factory :foo_bar 关联到 Factory :foo,Factory :foo 关联到 Factory :bar
- 从:foo_bar,我正在尝试访问:foo 和:bar 的属性
以下是示例:
Factory.define :bar do |e|
e.name "Bar"
end
Factory.define :foo do |e|
e.bar {|b| b.association(:bar)}
end
Factory.define :foo_bar do |b|
f = b.association(:foo)
b.foo_id foo.id
b.bar_id foo.bar_id
end
我已经阅读了许多教程和其他问题,但没有看到任何有关如何执行此操作的示例。任何想法或其他获得相同结果的方法?
谢谢!
编辑
基于几个问题,这里有一些我本来应该包括在内的澄清......
:foo_bar 不是连接表,而是具有自身其他属性的模型。
这就是我真正想要完成的事情:
- 有 :foo_bar 创建一个关联的工厂
- 然后让关联的工厂创建它的关联工厂
- (这是我正在努力解决的元素) :foo_bar 从底层工厂访问属性
所以,如果 :foo_bar > :foo > :bar 然后从 :foo_bar,我试图获取 :bar 的 ID。