Запрос встроенных документов mongoengine

Я начал использовать mongoengine, и встроенные документы не работают так, как я думал.

Я хочу указать cruds для каждой группы пользователей / коллекции и определил следующие типы документов.

class Crud(EmbeddedDocument):
    collectionName = StringField(required=True)
    create = BooleanField
    read = BooleanField
    update = BooleanField
    delete = BooleanField

class Group(Document):
    description = StringField()
    cruds = EmbeddedDocumentListField(Crud)

Заполнение данных работает как положено. Однако, когда я пытаюсь получить доступ к данным, как в следующей функции, я не вижу способа добраться до фактических данных. Независимо от того, что находится в базе данных, это всегда вернет False.

def is_collection_autorized(collection, auth_type='read'):
    for group in currentUser.groups:
        for cr in group.cruds:
            if cr.collectionName == collection and getattr(cr, auth_type):
                return True
    return False

0 ответов

Другие вопросы по тегам