Dan*_* F. 1 ruby-on-rails fabrication-gem ruby-on-rails-4
假设我有一个模型用户,它有很多注释。每个笔记都有字段 user_name。我希望我的笔记制造商看起来像这样:
Fabricator(:note, class_name: Note) do
user
content Faker::Lorem.paragraph(1)
user_name user.full_name
end
Run Code Online (Sandbox Code Playgroud)
我想要做的是使用已经存在的 User 的 full_name 方法中的值设置 user_name 。但我收到以下错误:
undefined method `full_name' for #<Fabrication::Schematic::Attribute:0x0000000a279c50>
Run Code Online (Sandbox Code Playgroud)
任何帮助,将不胜感激。
最终在文档中发现我可以使用一个属性哈希:
Fabricator(:note, class_name: Note) do
user
content Faker::Lorem.paragraph(1)
user_name { |attrs| attrs[:user].full_name }
end
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
441 次 |
| 最近记录: |