2013-05-13 72 views
0

我在軌道稱爲campaign一個模型,另一個叫export活動記錄不能創建的孩子,孩子總是零

class Campaign < ActiveRecord::Base 
    has_one :export 
end 

class Export < ActiveRecord::Base 
    belongs_to :campaign 
end 

然後我有代碼:

if campaign.export.nil? 
    campaign.create_export(:tag => 'newtag') 
end 

此代碼一次又一次創建新線路以便導出,因爲campaign.export始終爲nil

爲什麼我創建了出口campaign.create_export(),但campaign.export仍然是nil

回答

1

我的猜測是,你的出口驗證阻止了出口的創建。如果您撥打create_<model>並驗證失敗,它將有一個未保存驗證的模型副本

+0

謝謝!我試圖調試「導出」。 剛創建後,我可以跟蹤信息,它不會被保存,因爲該模型有一個特殊的線: has_one:export,:conditions => [「標記IS?」,無] – twindai 2013-05-15 08:32:21