我有一个 FactoryGirl 工厂,它为 ActiveRecord::Base 类定义了一些默认值。除了一个之外的所有值都进入了实例化类,除了一个。
这是我的工厂:
FactoryGirl.define do
factory :office, :class => Office do
open_date '03/01/2011'
set_up_date '04/28/2011'
type_code 'D'
end
after(:build) do |office|
puts "Office open_date: #{office.open_date}"
puts "Office set_up_date: #{office.set_up_date}"
end
end
这是我的基类:
class Office < ActiveRecord::Base
end
当我执行 FactoryGirl.build :office 时,我得到以下输出:
Office open_date: 2011-01-03 00:00:00 -0500
Office set_up_date:
这两列都是数据库上的 DATE 数据类型。出于某种原因,只有 open_date 被填充到基类中。到目前为止,我还无法确定原因。由于我只是调用构建,我想我可以安全地假设数据库触发器没有任何干扰。
有什么想法会导致 set_up_date 不在类实例上填充?
版本:
activemodel (3.2.11)
activerecord (3.2.11)
activerecord-oracle_enhanced-adapter (1.4.1)
activesupport (3.2.11)
factory_girl (4.2.0)
JRuby 1.7.2 (Running Ruby in 1.9 mode)
谢谢