让我们说我有一个有许多Notes的模型用户。每个注释都有字段user_name。我希望我的笔记Fabricator看起来像这样:
Fabricator(:note, class_name: Note) do
user
content Faker::Lorem.paragraph(1)
user_name user.full_name
end
我尝试做的是使用来自已存在的用户的full_name方法的值设置user_name。但我收到以下错误:
undefined method `full_name' for #<Fabrication::Schematic::Attribute:0x0000000a279c50>
任何帮助都将不胜感激。
答案 0 :(得分:3)
最终在documentation中发现我可以使用属性哈希:
Fabricator(:note, class_name: Note) do
user
content Faker::Lorem.paragraph(1)
user_name { |attrs| attrs[:user].full_name }
end