我有两种方法用于确定是否将类应用于页面以显示某些内容已过期并且需要注意。
新用户注册时出现错误:
undefined method `last_contact_done_date=' for #<User:0x6183708>
它引用错误的行是这样的:
2: <div class="span3 <%= "overdue" if (signed_in? && contact_overdue?(current_user.id)) %>">
方法是这个contact_overdue?
(在主页助手中)
def contact_overdue?(user_id)
@user = User.find_by_id(user_id)
return true if (Date.today - (@user.last_contact_done_date ||= Date.tomorrow)) > 6
end
User
模型中的 last_contact_done_date 方法就是这个
def last_contact_done_date
self.contacts.order('date_done DESC').first.try(:date_done)
end
我认为如果我||=
在方法中使用运算符,那么如果is contact_overdue?
,我会返回 -1 。但它似乎不起作用。我应该使用什么运算符,或者我应该如何更改方法,以便如果没有联系人,则从方法返回?last_contact_done_date
nil
last_contact_done_date
contact_overdue?
false
contact_overdue?