主要目的:使用filter完成條件查詢
1. 使用filterset
執行pip install django_filter
命令
匯入
from django_filters import rest_framework as filters
使用filterset
將其新增到filterset_class
檢視類的引數中
使用新的filterset
時,僅需要更改匯入路徑如果要預設使用django-filter
後端,請將其新增到default_filter_backends
設定中。
# settings.py[.
..'rest_framework'
,'django_filters',]
rest_framework =
實現**
from rest_framework import generics
from django_filters import rest_framework as filters
class
productfilter
(filters.filterset)
: min_price = filters.numberfilter(field_name=
"price"
, lookup_expr=
'gte'
) max_price = filters.numberfilter(field_name=
"price"
, lookup_expr=
'lte'
)class
meta
: model = product
fields =
['category'
,'in_stock'
,'min_price'
,'max_price'
]class
productlist
(generics.listapiview)
: queryset = product.objects.
all(
) serializer_class = productserializer
filter_backends =
[filters.djangofilterbackend,
] filterset_class = productfilter
2. 使用filterset_fields
filterset_fields
和filterset
不可同時使用
例項**
from rest_framework import generics
from django_filters import rest_framework as filters
class
productlist
(generics.listapiview)
: queryset = product.objects.
all(
) filter_backends =
(filters.djangofilterbackend,
) filterset_fields =
('category'
,'in_stock'
)
DRF 序列化自定義字段
models.py from django.db import models class usergroup models.model title models.charfield max length 32 class userinfo models.model user type choices...
DRF框架登入功能自定義認證和自定義的處理返回資料
1.在users模組建立utils.py,通過這個方法驗證是否為正確的使用者 from django.contrib.auth.backends import modelbackend import re from import models class userphoneemail modelba...
自定義控制項 二 安裝整合自定義的控制項
本章介紹如何把前一章建立的控制項安裝整合到qtcreator中,使得自己編寫的控制項也能像普通控制項一樣使用。把上一章編譯生成的hlabelplugin.dll libhlabelplugin.a 複製到c qt 4.8.2 plugins designer 即qtsdk的安裝目錄 中,重新開啟qt...