我正在编写一个todo应用程序,使用flask、mongoDB和Pymodm作为ODM。 我有两个模型名为User和UserGroups。这两者相互参照如下:
用户.py
from api.models.userGroup import group
class User(MongoModel):
_id = fields.IntegerField(primary_key=True)
email = fields.CharField()
password = fields.CharField()
createdAt = fields.DateTimeField(default=datetime.datetime.now())
groups = [fields.ReferenceField('group')]
personalTodoLists = fields.EmbeddedDocumentListField('list')
用户组.py
from api.models.user import user
class UserGroup(MongoModel, EmbeddedMongoModel):
_id = fields.IntegerField(primary_key=True)
name = fields.CharField()
createdAt = fields.DateTimeField(default=datetime.datetime.now())
ownerId = fields.ReferenceField('user')
contributors = [fields.ReferenceField('user')]
todoLits = fields.EmbeddedDocumentListField('list')
我得到错误:“ImportError:无法导入名称'user'”
在这种情况下,我如何正确地引用?你知道吗
循环引用是多对多关系的常见问题。这些包实现的通常解决方案是提供一种方法,使用带有名称的字符串(而不是对象本身)来引用(尚未定义)其他模型。你知道吗
我看得出来你就是这么做的。例如:
那么,您就不需要实际导入这些模型了。只需注释掉/删除有问题的导入行,就可以了。你知道吗
相关问题 更多 >
编程相关推荐