Запрос встроенных документов 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