所以我基本上有一張發票,post_status是零,當它設置爲關閉時,用戶不能再編輯它。在驗證之前,rails將記錄保存到表中?
validate :post_status, :if => :opened?
def opened?
if (post_status == 'Closed')
errors.add(:base, "Already Closed")
return false
end
return true
end
這就是我,但是當我設置爲關閉的時候,就已經開始驗證它,所以我真的不能把它設置爲關閉狀態。我希望它能夠將我的post_status設置爲關閉狀態,然後在下一次我想要編輯時,我不能編輯它,因爲它已經關閉了。
它給我的錯誤,它說需要提供中只會驗證至少一個驗證 – Oscar
取出秒,但,當我將它設置爲關閉,驗證開始踢在已其中犯規讓我將其設置爲關閉。因爲它已經檢測到,所以表格將不會被保存爲關閉 – Oscar
謝謝你指出。我更新了答案 –