使用MessageClicks表跟踪已读/未读的用户消息?
我正在尝试为我的应用程序的用户实现一个简单的收件箱系统 ,以便可以相互发送基本消息 – 就像在许多论坛系统中一样。
如果User has_many :messages
,我如何跟踪并通知用户自上次阅读以来未读的消息?
我认为点击Messages
屏幕的链接需要记录在一个单独的表( MessagesClicks
)中。
这是最好的方法吗?
那么我检查MessagesClicks
表以查看自上次链接被点击以来是否有任何新消息 – 基于last_clicked
或updated_at
字段 。
我会跟踪消息在消息本身上读取的时间,默认值为null。
如果用户具有dateRead值为null的任何Messages,则它们具有未读消息。
在“消息”屏幕上向用户显示消息时,请将消息的dateRead属性从null更新为now。