Database 什么';跨多个项目记住已读/未读状态的最有效方法是什么?
例如,让我们以论坛的形式为例,我们有多个用户和多个线程。假设这个论坛想要跟踪哪些用户已经阅读了哪些线程,并在查看线程列表时使用这些信息来标记哪些线程尚未阅读 我能想到的唯一解决方案是,每次用户访问线程时,都会将一条记录放入数据库。我想可能会有一个“将所有内容标记为已读”按钮,它可以使用一个时间戳来帮助减少数据库中的扩展。。。无论如何,这不是一个让我印象深刻的解决方案 我有一种感觉,我在这里错过了一些东西。。。也许感恩节早上不是思考编程问题的时候 有没有更好的解决办法?有什么想法吗Database 什么';跨多个项目记住已读/未读状态的最有效方法是什么?,database,read-unread,Database,Read Unread,例如,让我们以论坛的形式为例,我们有多个用户和多个线程。假设这个论坛想要跟踪哪些用户已经阅读了哪些线程,并在查看线程列表时使用这些信息来标记哪些线程尚未阅读 我能想到的唯一解决方案是,每次用户访问线程时,都会将一条记录放入数据库。我想可能会有一个“将所有内容标记为已读”按钮,它可以使用一个时间戳来帮助减少数据库中的扩展。。。无论如何,这不是一个让我印象深刻的解决方案 我有一种感觉,我在这里错过了一些东西。。。也许感恩节早上不是思考编程问题的时候 有没有更好的解决办法?有什么想法吗 在数据库中为每
对我来说,使用数据库记录听起来是最有希望的。如果你有一个活跃的论坛,它将很快生成一个包含数百万行的表,但这将是最简单的实现方案。它将为查询哪些用户也在阅读什么提供很大的灵活性。我想我在某个地方看到过,也许是phpbb论坛?反正 其中有一个包含userid、threadid、last read datetime(将其命名为userAsRead)的表 然后,它将比较该threadid中的最后一篇文章与上次读取的datetime 对于标记为all read,它是usertable中的一个字段,使用与上面相同的逻辑 不要忘记清除userAsRead,如果使用“markasall read”,将节省数据库空间