[英]filter with select_related on Django
我在过滤器操作中使用Django的select_related功能时遇到问题,这是我的问题,我有三个类:
class A:
# various fields here
class B(models.model):
related_A = models.ForeignKey(A)
related_C = models.ForeignKey(C)
attribute1 = models.CharField(..)
# Other attributes
class C(models.model):
# Attributes
我想做的是,根据另一个参数attribute1 (来自类B),通过对关键字related_C上的类B进行过滤,来获取类A。 为了正确说明,我在类C中有一个函数get_class_A(self)
get_class_A(self,param):
classes_B = B.objects.filter(related_C = self,attribute1 = param)
它返回一个类B的QuerySet。我要做的是跟随ForeignKey指向A,以便将该B的QuerySet转换为对象A的列表。
我尝试了各种事情,例如:
classes_A = B.objects.select_related('A').filter(related_C = self, attribute1 = param)
和一些变化,但无济于事。 有谁知道该怎么做?
谢谢
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.