Django 模型:两个类之间的相互引用以及无法在 python 中使用前向声明
我定义了两个模型,其中每个模型都引用另一个模型,如下所示:
class User(models.Model):
# ...
loves = models.ManyToManyField(Article, related_name='loved_by')
class Article(models.Model):
# ...
author = models.ForeignKey(User)
您看,问题是两个类都相互引用。无论这两个类以什么顺序实现,python 总是会引发 NameError
异常,抱怨其中一个类未定义。
I have defined two models where each one references the other, like so:
class User(models.Model):
# ...
loves = models.ManyToManyField(Article, related_name='loved_by')
class Article(models.Model):
# ...
author = models.ForeignKey(User)
You see, the problem is both classes references each other. No matter in what order these two classes are implemented, python always raises NameError
exception, complaining either one class is not defined.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以在文档中找到解决方案:
You can find the solution in the docs: