我正在制作通知系统,以便当组中的用户执行操作时,它将通知该组中的所有其他用户。我希望为该组的每个用户将通知标记为“已读”或“未读”。有了这个,我可以轻松地检索用户的任何未读通知并显示它。我考虑创建一个包含以下字段的通知表。
+----------------------+
| notification |
+----------------------+
| id |
| userid |
| content |
| status (read/unread) |
| time |
+----------------------+
我的问题是:
谢谢!
答案 0 :(得分:1)
更好的方法是通过执行以下操作将通知与用户分开:
Table Notification
------------------
not_id
time content
Table User
----------
u_id
Table NotificationStatus
------------------------
id
u_id
not_id
bool read
这样您就必须将每个通知只保存一个,这样可以更容易地修改/编辑通知
答案 1 :(得分:0)
id = 1
userid =1
content = "Photo Added By User PQP"
status = Unread
time = currenttime
所以在这种情况下,whenevr some1将上传照片,然后通知表将进入其中..
答案 2 :(得分:0)
考虑以下数据结构:
Table: Events
----------------
event_id
user_id (foreign key to users table)
action_id (foreign key to actions table)
time_stamp
Table: Log
----------------
user_id (foreign key to users table)
event_id (foreign key to events table)
time_stamp
逻辑应该是用户X认为所有事件都未读,除非Log表包含该用户的event_id
动作表可能有多种类型的动作。
您将能够通过查询日志来计算并通知所有用户有多少其他用户已“收到”该操作。等等” ...