84669 Lernen von Personen
152542 Lernen von Personen
20005 Lernen von Personen
5487 Lernen von Personen
7821 Lernen von Personen
359900 Lernen von Personen
3350 Lernen von Personen
180660 Lernen von Personen
48569 Lernen von Personen
18603 Lernen von Personen
40936 Lernen von Personen
1549 Lernen von Personen
1183 Lernen von Personen
32909 Lernen von Personen
我有一个类似于微博的表, 功能是想让用户看过这条微博就不再显示了.
weibo: {type:String, default:null}
read: {type:objid,default: null}
然后循环对比吗? 实在想不通了 求救.
A 是消息表, B 是已读, C 是用户表.
A 表查询的时候 类似于 A._id != (B.read = true and C.uid = 1).readid
{ "_id": ObjectId(12345) , "title": "shajiquan.com" }
{ "_id": ObjectId(112233445), "username": "shajiquan.com" }
{ "user_id": ObjectId(12345), "topic_id": ObjectId(67890) }
# 某用户 阅读过的 has_read = db.read.find({'user_id':USER_ID},{'topic_id':1}) has_read = [i.get('topic_id') for i in list(has_reads)] # 某用户 没有阅读过的 topics = db.topics.find({'topic_id':{'$nin':has_read}}) topics = list(topics)
显示时只查询read为false的就行了啊
topic 表
user 表
read 表
显示时只查询read为false的就行了啊