在我的Rails 4应用中,invoice
最多可以有3个reminders
。
如何确保用户只能删除每张发票的最后提醒?
例如,如果用户为发票创建了2个提醒,则只有第二个提醒应该是可删除的(确切地说具有较大id
的提醒)。
如何实现这一目标?
感谢您的帮助。
class Reminder < ActiveRecord::Base
belongs_to :invoice
def deletable?
...
end
end
答案 0 :(得分:2)
简单的解决方案:
def deletable?
self == invoice.reminders.last
end
但是,这不会处理在您检查提醒是否可删除的时间与实际删除之间添加提醒的情况。