-對於列表資料可能需要根據字段進行過濾,我們可以通過新增django-fitlter擴充套件來增強支援。
pip install django-filter
rest_framework = ```
-在檢視中新增filter_fields屬性,指定可以過濾的字段
from django_filters.rest_framework import djangofilterbackend
class booklistview(listapiview):
queryset = bookinfo.objects.all()
serializer_class = bookinfoserializer
-區域性設定
filter_backends = [djangofilterbackend]
# 介面:/api/cars/?price=900000&brand=1
filter_fields = ('brand', 'price') #過濾的字段
## 搜尋
```python
from rest_framework.filters import searchfilter
# 篩選
filter_backends = [djangofilterbackend, searchfilter]
# 介面:/api/cars/?search=9 代表9在name或price兩個字段進行模糊查詢
search_fields = ('name', 'price')
from rest_framework.filters import orderingfilter
# 排序
# 介面:/api/cars/?ordering=-id | /api/cars/?ordering=-price
filter_backends = [djangofilterbackend, searchfilter, orderingfilter]
ordering_fields = ('id', 'price')
DRF 過濾 搜尋 排序功能
過濾功能利用的是第三方包 django filters,搜尋和排序利用的是 django drf 提供的 filters 示例 如下 from rest framework import filters 搜尋和排序功能 注意 這兩個是 drf 提供的功能 from django filters.re...
django 中多條件搜尋
django中我們一般用orm進行資料的互動操作,單條件搜尋比較方便,那多條件呢?吐槽完上面的,我們看看下面的 models就不曬了,直接上views 多條件查詢一行 就能搞定,我之前還在自己寫if,else進行判斷取值 login required def api case search requ...
django中的過濾器語法
過濾器 語法 例如 表示將變數name的值變為小寫輸出 使用管道符號 來應用過濾器 作用 通過使用過濾器來改變變數的計算結果 可以在if標籤中使用過濾器結合運算子 if list1 length 1過濾器能夠被 串聯 構成過濾器鏈 name lower upper過濾器可以傳遞引數,引數使用引號包起...