我有以下工厂:
Factory.define :email do |email|
email.email {"infomcburney.cowan.com"}
end
Factory.define :lead do |lead|
lead.emails {|emails| [emails.association(:email)]}
end
Run Code Online (Sandbox Code Playgroud)
以下是为以下类建模的
class Lead < ActiveRecord::Base
has_many :emails
end
class Email < ActiveRecord::Base
belongs_to :lead, :class_name => "Lead", :foreign_key => "lead_id"
end
Run Code Online (Sandbox Code Playgroud)
当我通过shoulda运行此测试时:
should "capture emails" do
lead = Factory.build(:lead)
assert_equal(1, lead.emails.size)
end
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
Factory :: AttributeDefinitionError:已定义的属性:电子邮件
我完全坚持这个,任何人都可以指出我正确的方向.我正在使用factory_girl 1.3.2.