相关疑难解决方法(0)

与has_many关系的Factory Girl错误

我有以下工厂:

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.

ruby-on-rails factory-bot

8
推荐指数
1
解决办法
5399
查看次数

标签 统计

factory-bot ×1

ruby-on-rails ×1