我想自動刪除對象的Rails如何自動刪除對象
我Konkurrancer型號:
class Konkurrancer < ActiveRecord::Base
belongs_to :kategori
end
我有一個名爲期限與日期一欄。 當到達最後期限時,我想要刪除對象。 我應該如何編寫代碼,它應該放在哪裏?
我想自動刪除對象的Rails如何自動刪除對象
我Konkurrancer型號:
class Konkurrancer < ActiveRecord::Base
belongs_to :kategori
end
我有一個名爲期限與日期一欄。 當到達最後期限時,我想要刪除對象。 我應該如何編寫代碼,它應該放在哪裏?
我認爲你應該讓名爲active
的列在到達截止日期時設置爲false。可能您需要每天或每小時檢查截止日期的cron。
另外,爲了補充一點,在一段固定的時間內(比如一週),您可以清理標記爲「不活動」的對象。 – Shreyas 2011-03-06 18:23:35
我應該在控制器中做出一個動作還是應該進入模型? – 2011-03-06 18:24:58
你有2個問題在這裏:
我正在考慮選擇解決方案標記爲已刪除。那麼我是否應該每天運行一個後臺任務來查看截止日期是否已達到,以及是否將其標記爲已刪除。 – 2011-03-06 18:30:28
您可以根據需要頻繁運行它,但要確保它不會給系統帶來額外的負擔。 – Zepplock 2011-03-06 21:25:51
你想在沒有任何通知的情況下將對象從數據庫中刪除,並且沒有任何機會被帶回? – tommasop 2011-03-06 18:14:25
是的。我希望他們從公共視圖中刪除。但仍然希望能夠在管理控制檯中將其看作已刪除。 – 2011-03-06 18:17:27