1
我们如何在ModelViewSet
中编写函数来获取数据库中不同记录的列表?如何在视图中获取自定义列表
假设我们有这个模型。
class Animal(models.Model):
this_id = models.CharField(max_length=25)
name = models.CharField(max_length=25)
species_type = models.CharField(max_length=25)
...
和串行
class AnimalSerializer(serializers.ModelSerializer):
class Meta:
model = Animal
fields = (
'this_id',
'name',
'species_type',
...,
)
read_only_fields = ('id', 'created_at', 'updated_at')
和视图集。
class AnimalViewSet(viewsets.ModelViewSet):
"""
This viewset automatically provides `list`, `create`, `retrieve`,
`update` and `destroy` actions.
"""
queryset = Animal.objects.all()
serializer_class = AnimalSerializer
我发现这个link有用的,例如像装饰
@list_route()
但我无法理解这一点很好。
我想从ViewSet中获取不同Animal.species_type
记录的列表。请帮忙。
这不是我的意思是,先生是什么,我想调用一个函数通过viewset获取数据库中所有不同的species_type记录。这意味着我不会对特定的species_type提出请求。 –
所以你只想要种类?我编辑了我的答案 – Dap
这意味着我们可以在另一个序列化类中定义它?听起来不错,我喜欢关于'url_path'的想法。 –