这里是查询集,我想通过两个 django 字段进行过滤。
#models.py
class ExmapleModel(models.Model):
first_field = models.IntegerFiled()
second_field = models.IntegerField()
这里的观点
#views.py
class ExampleApiView(ListAPIView):
queryset = ExmapleModel.objects.all()
serializer_class = ExmapleModelrSerializer
permission_classes = (AllowAny,)
def get_queryset(self):
qs = super().get_queryset()
...
if condition:
return qs.filter(lambda item: item.first_field < item.second_field)
return qs
我试过这样过滤,当然不行
qs.filter(lambda item: item.first_field < item.second_field)
from django.db.models import F
qs.filter(first_field__lt=F('second_field'))