使用FactoryGirl.create创建对象时是否可以关闭模型的观察者(使用after_create操作)?
我想在开始测试之前创建一堆对象,但观察者会制动该过程。所以我希望在真正的测试开始之前关闭它。
答案 0 :(得分:6)
似乎可以在应用程序中禁用所有观察者(或特定的观察者)。使用下面的代码在构造观察对象时关闭/打开它。
FactoryGirl.define do
factory :user do
association :status, :factory => :user_status
before(:create) do
ActiveRecord::Base.observers.disable :user_observer
end
after(:create) do
ActiveRecord::Base.observers.enable :user_observer
end
end
end