3

我有一个非常简单的工厂,有序列

FactoryGirl.define do

  factory :lecture do
    sequence(:name) {|n| "lecture #{n}" }
    sequence(:slug) {|n| "lecture-#{n}" }
  end
end

当我build- 它看起来不错

(FactoryGirl.build :lecture)
=> #<Lecture id: nil, slug: "lecture-20", name: "lecture 20", position: nil, created_at: nil, updated_at: nil>

但是当我尝试访问时attributes,我只得到nil

(FactoryGirl.build :lecture).attributes
=> {"name"=>nil,
 "slug"=>nil,
 "id"=>nil,
 "position"=>nil,
 "created_at"=>nil,
 "updated_at"=>nil}

当我使用另一个没有序列的工厂时,它工作正常。此外,使用attributes_for效果很好

FactoryGirl.attributes_for(:lecture)
=> {:name=>"lecture 23", :slug=>"lecture-23"}

我希望能够使用build,所以我得到所有属性,包括 foreign-keys,但不知何故它返回nil值......任何想法我可能做错了什么或如何解决它?

4

0 回答 0