如何在DRF中使用过滤器
Posted lz666lz
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在DRF中使用过滤器相关的知识,希望对你有一定的参考价值。
一、准备工作:首先定义好model以及视图类相关信息
class Book(models.Model):
name = models.CharField(max_length=32)
pub_num = models.IntegerField(default=10)
salary_num = models.IntegerField(default=100)
def __str__(self):
return self.name
class CheckView(viewsets.GenericViewSet, mixins.ListModelMixin):
queryset = models.Book.objects.all()
serializer_class = BookSerializer
def get(self, request):
res = self.serializer_class(self.queryset, many=True)
return Response(res.data)
class BookSerializer(serializers.ModelSerializer):
authors_info = serializers.SerializerMethodField(read_only=True)
def get_authors_info(self, obj):
return [{‘id‘: author.id, ‘name‘: author.name} for author in obj.authors.all()]
class Meta:
fields = ‘__all__‘
model = models.Book
以上是关于如何在DRF中使用过滤器的主要内容,如果未能解决你的问题,请参考以下文章
DRF - 如何使用条件更改 serializer.PrimaryKeyRelatedField 的过滤器查找键?
是否过滤 Django Rest Framework (DRF) 中的代码示例优化问题