1
我試圖做一個after_save的條件回調軌回調不工作
after_save :change_rel_status, :if => :relation_type_id == 1
def change_rel_status
self.status = "Confirmed"
self.save
end
但我得到的錯誤信息undefined method after_save for false:FalseClass
{"utf8"=>"✓",
"_method"=>"put",
"authenticity_token"=>"f4IN...=",
"relationship"=>{"relation_type_id"=>"1",
"category_ids"=>[""]},
"commit"=>"Update Relationship",
"id"=>"19"}
我不知道這是否是因爲形式也有其他屬性來自未更新的其他模型?
謝謝。
感謝,但同樣deep'返回錯誤味精'棧級別。我認爲把條件放在回調本身上會更好,所以它不會每次都進行回調。 – noob
哦,我的壞! after_save將觸發change_rel_status,它將調用save進入無限循環。好吧,無論哪種方式,它必須檢查條件是否滿足(即是否relation_type_id == 1),所以我不明白它有什麼不同。 –
不用擔心。無論哪種方式,它不工作:P – noob