NodeBB-帖子信誉/赞-查找喜欢帖子的用户

时间:2020-02-20 13:11:25

标签: node.js mongodb redis nodebb

我找不到NodeBB在哪里存储喜欢特定帖子的用户列表。 例如,考虑以下数据结构:-

> db.objects.find({_key:"post:2341"}).pretty()
{
    "_id" : ObjectId("5547af3f65190fe2122d0b3c"),
    "_key" : "post:2341",
    "edited" : 0,
    "pid" : 2341,
    "content" : "content of this post",
    "tid" : 2543,
    "timestamp" : 1412304172707,
    "deleted" : 0,
    "editor" : "",
    "uid" : 747,
    "toPid" : 19999,
    "votes" : 0,
    "reputation" : 5
}

以上内容说,帖子ID 2341具有5的声誉,这意味着5用户喜欢它。但是,在哪里存储这些喜欢此特定帖子的用户ID?

1 个答案:

答案 0 :(得分:0)

最后通过遍历NodeBB代码来寻找将其存储在数据库中的确切密钥。存储它的特定密钥为pid:{postid}:upvote。所以我们这样查询:-

>db.objects.find({_key: "pid:2341:upvote"})
{
    "_id": ObjectId("5547af3f65190fe2122d0b3c"),
    "_key": "pid:2341:upvote",
    "members": ["663", "230", "549"]
}

上面的回复包含对特定帖子进行投票的用户的ID。