Reputation: 377
I am not able to find where does NodeBB stores the list of users who liked a particular post. For example, consider following data structure:-
> 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
}
The above says that Post ID 2341
has 5
reputations which means it is liked by 5
users. But where does it stores that these are the User IDs who liked this particular post?
Upvotes: 1
Views: 212
Reputation: 377
Finally hunted down for the exact key that stores it in the database via going through NodeBB code. And the particular key that stores it is pid:{postid}:upvote
. So we query like this:-
>db.objects.find({_key: "pid:2341:upvote"})
{
"_id": ObjectId("5547af3f65190fe2122d0b3c"),
"_key": "pid:2341:upvote",
"members": ["663", "230", "549"]
}
The above response contains the IDs of the users who upvoted a particular post.
Upvotes: 1