所以我有一些这样的代码:
objects_list = A.objects.filter(some_param = some_value)
for obj in objects_list:
object = B.objects.get(pk=obj.another_param)
#do stuff with the B object
有没有办法将它组合成一个查询或其他东西?如何?谢谢!
所以我有一些这样的代码:
objects_list = A.objects.filter(some_param = some_value)
for obj in objects_list:
object = B.objects.get(pk=obj.another_param)
#do stuff with the B object
有没有办法将它组合成一个查询或其他东西?如何?谢谢!
你可以做:
a_qs = A.objects.filter(some_param=some_value).values_list('another_param', flat=True)
b_qs = B.objects.filter(pk__in=a_qs)
for b in b_qs:
#do stuff with b
或者,如果您想合并:
b_qs = B.objects.filter(pk__in=A.objects.filter(some_param=some_value).values_list('another_param', flat=True))
for b in b_qs:
#do stuff with b