Py学习  »  MongoDB

在MongoDB中查询对象内的嵌套文档

Mohammad Ghonchesefidi • 5 年前 • 1435 次点击  

我已经开发了一个python flask应用程序,使用mongoengine和mongodb作为我的数据库。
我想查询我的数据库并获取所有用户的所有票证,这些用户的角色是“user”。
这是我的票务和用户数据库模式:

class TicketReply(EmbeddedDocument):
    content = StringField(required=True, max_length=2000)
    date = ComplexDateTimeField(required=True)
    user = StringField(required=True, max_length=30)
    fileAttached = StringField(max_length=500)


class Ticket(EmbeddedDocument):
    subject = StringField(required=True, max_length=200)
    content = StringField(required=True, max_length=2000)
    department = StringField(required=True, max_length=20)
    status = StringField(required=True, max_length=20)
    createdDate = ComplexDateTimeField(required=True)
    fileAttached = StringField(max_length=500)
    id = StringField(max_length=500, required=True)
    replies = EmbeddedDocumentListField(TicketReply)


class Users(UserMixin, Document):
    fullName = StringField(required=True, max_length=200)
    email = EmailField(required=True, unique=True)
    phone = StringField(required=True, max_length=11, min_length=11, unique=True)
    password = StringField(required=True, max_length=500)
    registerDate = ComplexDateTimeField(required=True)
    role = StringField(required=True, max_length=20)
    tickets = EmbeddedDocumentListField(Ticket)

这是我获取特定用户票证的方式:

user = Users.objects(email=current_user.email).first()
        getTickets = user.tickets

但我不知道如何得到所有用户的票,所有用户的角色'用户'。
如有任何帮助,我们将不胜感激。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/48176
 
1435 次点击  
文章 [ 1 ]  |  最新文章 5 年前