Циркулярная ссылка с монгокитом - возможно ли это?

У меня 2 класса Branch & User. Пользователь принадлежит к определенной ветке. Однако в каждом филиале есть генеральный директор (тип пользователя). Но когда я проектирую классы mongokit и пытаюсь использовать ссылку, он работает для класса User (так как ветвь определяется перед User), но не работает для класса Branch, получая следующую ошибку:

'ceo': UserNameError: имя 'User' не определено

Так что вопрос - как добиться такой ссылки?

from mongokit import *
from datetime import datetime, date, time
import pprint

db = Connection()

@db.register
class Registry(Document):
    structure = {
        'created': datetime,
        'updated': datetime,
        'deleted': datetime
    }

@db.register
class Branch(Registry):
    structure = {
        'name':unicode,
        'groupEmail':unicode,
        'timezone':unicode,
        'address': {
            'address1':unicode,
            'address2':unicode,
            'city':unicode,
            'state':unicode,
            'country':unicode,
            'zip': unicode
        },
        'size':int,
        'ceo': User
}

@db.register
class User(Document):
    structure = {
        'fname': unicode,
        'lname': unicode,
        'branch': Branch,
        'address': {
            'address1':unicode,
            'address2':unicode,
            'city':unicode,
            'state':unicode,
            'country':unicode,
            'zip': unicode
        },
        'created': datetime,
        'updated': datetime,
        'deleted': datetime
    }

0 ответов

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