2014-09-23 41 views
0

在我的Rails 4应用程序中,invoice最多可以有3个reminders如何确保只有最后一个孩子可以被删除?

我怎样才能确保只有最后提醒每个发票可以被用户删除?

例如,如果用户为发票创建了2个提醒,则只有第二个提醒应该是可删除的(具有更高的id的那个)。

这是如何实现的?

感谢您的任何帮助。

class Reminder < ActiveRecord::Base 

    belongs_to :invoice 

    def deletable? 
    ... 
    end 

end 

回答

2

简单的解决方案:

def deletable? 
    self == invoice.reminders.last 
end 

然而,这不会处理哪里是哪里,你检查的提醒是可删除的时间之间增加了一个提醒的情况下,与实际删除。

+0

这个工程,非常感谢。 – Tintin81 2014-09-23 10:34:55

相关问题