我有一个mongodb数据库,其中有2个集合。 posts
和users
。mongo db - 用于在webapp中实现相似功能的模式
帖子JSON结构是这样
{title:"Title", content:"content goes here", postedby: "userid"}
和用户是喜欢
{username:"", name:""}
现在我需要实现一个类似的功能,在用户喜欢的职位。
解决方案1
我可以把内部数组中的用户喜欢
{username:"", name:"", likes:[postid1,postid2..]}
问题这里是它很容易地查询该用户喜欢的职位。但很难得到喜欢文章的人。
解决方案2
我可以把内部数组中的帖子像
{title:"Title", content:"content goes here", postedby: "userid", like:[userid1,userid2 ..]}
问题这里是它容易得到喜欢谁的文章的人。但很难查询用户喜欢的帖子。
我该如何解决这个问题? 目前我正在考虑两种方式。就像保持两个集合中的内部数组一样。我知道我保留了冗余数据,是否是解决此问题的最佳方法?
你可以告诉我,我应该有独立的像收集...吗? – ravisuhag
@ravisuhag由于用户可以拥有大量的喜欢,我可能会把这些喜欢的自己放入一个单独的{'_id :(),user_id:(),media_id:(),collection:(),date_liked :()}“收藏”字段将让您喜欢多个媒体项目,即墙壁帖子和视频。 – Sammaye