来自 Django 文档:
后向关系怎么可能?
其他对象关系映射器要求您定义双方的关系。Django 开发人员认为这违反了 DRY(Don't Repeat Yourself)原则,因此 Django 只要求您在一端定义关系。
但是这怎么可能呢,因为模型类在加载其他模型类之前不知道哪些其他模型类与之相关?
答案在于 INSTALLED_APPS 设置。第一次加载任何模型时,Django 会遍历 INSTALLED_APPS 中的每个模型,并根据需要在内存中创建反向关系。本质上,INSTALLED_APPS 的功能之一是告诉 Django 整个模型域。
有没有办法得到这个 ORM 模型?我正在尝试调试一些不是自动创建的反向关系,这将有助于查看 Django 创建的整个 ORM。