三:Django views filter过滤排序

Django-api 过滤和排序 django-filter

pip install django-filter -i Simple Index

在settings.py的installed_apps中注册django_filters

自定义过滤器

import django_filters
from my_mysql_web_app.models import BladeNumberTableModel


class BladeNumberTableModelFilter(django_filters.FilterSet):
    task_id = django_filters.CharFilter(field_name='task_id', lookup_expr='exact')

    class Meta:
        model = BladeNumberTableModel
        fields = ['task_id']

# 过滤,排序

 filter_backends = [DjangoFilterBackend, OrderingFilter]

指定filter_backeds 中的DjangoFilterBackend类,来触发我们自定义的过滤器BladeNumberTableModelFilter,OrderingFiter是排序的类,我们只需要指定排序的字段就ok

# 指定排序的字段

    ordering_fields = ("id", "c_time", "u_time")

    # 默认排序字段

    ordering = ["id"]

下一篇写views.py中的实际应用

猜你喜欢

转载自blog.csdn.net/xiaofeixia666888/article/details/127070567
今日推荐