程序问答   发布时间:2022-06-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Django与select_related的反向关系大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决Django与SELEct_related的反向关系?

开发过程中遇到Django与SELEct_related的反向关系的问题如何解决?下面主要结合日常开发的经验,给出你关于Django与SELEct_related的反向关系的解决方法建议,希望对你解决Django与SELEct_related的反向关系有所启发或帮助;

请参阅有关prefetch_related的文档。目前仅是开发人员,但将在Django 1.4中使用。如果您可以等待,或者可以在后备箱上运行。您将可以使用它。

同时,您可以尝试django-batch-SELEct。本质上,它具有相同的目的。

解决方法

我有4个模型,我想检索它们之间的联接

型号A

class ModelA(models.Model):
    product = models.ForeignKey(ModelB)
    group = models.ForeignKey(Group)

型号B

class ModelB(models.Model):
    title = models.CharField()

型号C

class ModelC(models.Model):
    product = models.ForeignKey(ModelB)
    group = models.ForeignKey(ModelD)

型号

class ModelD(models.Model):
    name = models.CharField()

现在,我希望将所有 @H_67_13@modelA 对象与 @H_67_13@modelB , @H_67_13@modelC 和 @H_67_13@modelD结合在一起。
在sql中,这很容易做到。只是在表之间进行联接。使用Django ORM时,我会卡住,因为我只能做正向关系。

我在做这个

@H_73_17@modelA.objects.all().SELEct_related(product)

但是我不能加入ModelC,我已经阅读了这篇文章,但是我不想遍历我的大清单,做一件简单的事情!而且我只想打一次数据库。

我使用的是Django的最新版本,希望我已经知道了解决方案。

谢谢你。

大佬总结

以上是大佬教程为你收集整理的Django与select_related的反向关系全部内容,希望文章能够帮你解决Django与select_related的反向关系所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。