小编Vin*_*rio的帖子

Django Rest Framework:按序列化器方法字段排序

我目前正在使用 Django REST Framework 3.11.0 和 Django 3.0.6。我对 DRF 还很陌生,不知道如何解决这个问题。我正在尝试将排序应用于 SerializerMethodField 和枚举。我找到了一些文档,说明我可以制作自己的 OrderFilter,但我不知道如何制作。有什么我可以使用的例子吗?这是我的代码。

看法

from rest_framework import generics
from V1.assets.models.asset_main import Asset
from V1.assets.serializers.asset_serializer import AssetSerializer
from rest_framework import filters
from django_filters.rest_framework import DjangoFilterBackend

class AssetsView(generics.ListCreateAPIView):
    queryset = Asset.objects.all()
    serializer_class = AssetSerializer
    filter_backends = [DjangoFilterBackend, filters.SearchFilter, filters.OrderingFilter]
    filter_fields = ['asset_type']
    search_fields = ['asset_type', 'asset_properties', 'current_employee_name'] 
Run Code Online (Sandbox Code Playgroud)

模型

class AssetType(models.TextChoices):
    LAPTOP = 'LPT', _('Laptop')
    MOUSE = 'MSE', _('Mouse')
    MONITOR = 'MTR', _('Monitor')
    AC_ADAPTER = 'ADR', _('AC Adapter')
    TELEPHONE = 'TLP', …
Run Code Online (Sandbox Code Playgroud)

python django django-rest-framework

3
推荐指数
1
解决办法
3233
查看次数

标签 统计

django ×1

django-rest-framework ×1

python ×1