我使用过 django,但我是 mongodb 的新手。我有以下模型:
class Conversation(models.Model):
date = models.DateTimeField(auto_now_add=True, db_index=True)
users = ListField(models.CharField(max_length="64"), editable=False)
messages = ListField(EmbeddedModelField('Message'), editable=False)
class Message(models.Model):
user = models.CharField(max_length="64")
text = models.CharField(max_length="512");
date = models.DateTimeField(auto_now_add=True, db_index=True)
我已经为每个用户存储和显示带有消息的对话,但现在我想过滤一些用户的对话,比如私人聊天。
例如,我想获取用户包含 ['Dennis','linus','Guido'] 的对话
我该怎么做?
提前致谢。
* 编辑 *
我用Q得到它
django.db.models.Q
Conversation.objects.filter(Q(users = msg['Dennis'])&Q(users = msg['linus']&Q(users = msg['Guido']))
有更好的方法吗?