3

我有这个 Rails 模型的制造商:

Fabricator(:foo) do
  transient n_iterations: 5

  bar(count: :n_iterations) { Fabricate(:bar) }
end

但是,这并没有像希望的那样工作。我已经尝试过count: n_iterations,count: attrs[:n_iterations]count: attrs[n_iterations], 似乎没有任何效果。不过,这似乎应该是一件相对简单的事情。

任何想法将不胜感激。

4

1 回答 1

0

您可以使用以下内容:

Fabricator(:foo) do
  transient n_iterations: 5
  bar { |attrs| (1..attrs[:n_iterations]).map { Fabricate(:bar) } }
end

但是请注意,这将Fabricate(:foo, n_iterations: 0)返回一个空数组。Foobar => []

于 2013-09-06T22:07:56.863 回答