3
我有兩種具有圓形關係的模型。如何在Factory Girl中對這些模型進行建模?具有圓形關係的鐵軌工廠女孩
我收到太多的錯誤消息,試圖做到這一點。
型號:
class Account < ActiveRecord::Base
has_many :users
belongs_to :owner, class_name: "User", inverse_of: :account
end
class User < ActiveRecord::Base
belongs_to :account
end
工廠:
FactoryGirl.define do
factory :user, aliases: [:owner] do
sequence(:email) { |n| "user#{n}@example.com" }
password "test"
password_confirmation "test"
account
end
end
FactoryGirl.define do
factory :account do |account|
account.name "My School"
account.short_name "school1"
account.sequence(:subdomain) { |n| "school#{n}" }
account.owner { FactoryGirl.build(:user, account: account) }
end
end
我得到以下錯誤:
Failure/Error: let!(:user) { FactoryGirl.create(:user) }
NoMethodError:
undefined method `primary_key' for #<FactoryGirl::Declaration::Implicit:0x00000007bd9050>
# ./spec/factories/accounts.rb:8:in `block (3 levels) in <top (required)>'
# ./spec/models/user_spec.rb:8:in `block (3 levels) in <top (required)>'
# -e:1:in `<main>'
你能與此錯誤幫助嗎?
我得到堆棧太深錯誤:'故障/錯誤:無法從回溯SystemStackError找到匹配的行:堆棧層次過deep' – Derick
衛生署! - 更新的答案,缺少':'關聯':所有者,工廠::用戶' – house9
是的。我在測試之前添加了 – Derick