寻找一个良好的数据库结构来实现Facebook / SO之类的通知

时间:2010-03-28 23:58:01

标签: php mysql notifications

我希望能够在我的网站上收到通知,类似于SO的方式。我已经找到了一个很好的表结构来做到这一点,但我似乎无法弄明白。

我在想这样的事情。

通知

idnotification_type_iduser_idtype_id

通知类型

idnotification_text

如果通知类型与新帖子,新评论或我稍后添加的任何功能相关...用户ID将与通知所针对的人有关。 Type_id和通知类型将齐头并进,因此如果notification_type是新注释,则type_id将是要转到的comment_id。

这对我来说似乎很好,但我希望能够在发生变化时通知所有用户..就像在Facebook上评论某些内容时,您会收到通知,其他人也在您之后对同一事情发表了评论。

我似乎无法弄清楚......帮助想要

由于

编辑:我想到的方式是,notification_type_id将映射到notification_type表,该表将保存每个通知的文本(“你有新的评论”,“等等等等等等等等还评论了blah blah blah“等等,type_id将映射到注释的primary_id。例如,如果通知说你的帖子有新的评论,那么type_id将是帖子的主要ID,以便于链接.. IDK,这只是一个想法。

2 个答案:

答案 0 :(得分:13)

看看这些stackoverflow问题:
Facebook like notifications tracking (DB Design)
Database design to store notifications to users

特别注意this答案,其中包含您的请求的完整解决方案。

答案 1 :(得分:0)

你能详细说明每一列是什么,因为你的文字不是很精确,因为你提到了“通知类型”而你的例子中不是一列。表通知类型中的哪个列指向id:notification_type_id或type_id?