1

假设我有一个模型用户,它有很多笔记。每个注释都有字段 user_name。我希望我的笔记 Fabricator 看起来像这样:

Fabricator(:note, class_name: Note) do
  user
  content Faker::Lorem.paragraph(1)
  user_name user.full_name
end

我想要做的是使用来自已经存在的用户的全名方法的值设置用户名。但我收到以下错误:

undefined method `full_name' for #<Fabrication::Schematic::Attribute:0x0000000a279c50>

任何帮助,将不胜感激。

4

1 回答 1

5

最终在文档中发现我可以使用一个属性哈希:

Fabricator(:note, class_name: Note) do
  user
  content Faker::Lorem.paragraph(1)
  user_name { |attrs| attrs[:user].full_name }
end
于 2014-11-05T16:26:58.453 回答