0
我有一个User
和UserProfile
模型。目前这两款机型都具有first_name
,last_name
和email
的属性,它们必须相同。稍后,我将从User
中删除这些属性,但目前我想要这样。 A UserProfile
belongs_to
a User
。我已经定义了UserProfile
制造者,像这样:如何在制造商的定义中使用制造商的属性?
Fabricator(:user_profile) do
first_name { Faker::Name.first_name }
last_name { Faker::Name.last_name }
email { Faker::Internet.email }
user { Fabricate :user }
end
和User
制造者:
Fabricator(:user) do
email { Faker::Internet.email }
first_name { Faker::Name.first_name }
last_name { Faker::Name.last_name }
last_login_at { Time.now }
organization { Fabricate :organization }
end
的问题是,现在,当我制作一个用户配置文件的属性是不一样的:
user_profile.first_name == user_profile.user.first_name # => false
在用户配置文件制造商的定义中,我尝试了这个,但它没有工作:
user { Fabricate :user, first_name: first_name, last_name: last_name, email: email }
如何制作具有相同属性的用户和用户配置文件,而无需用硬编码值替换Faker?