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?