django_rest_framework_query_tools
1.0.0
Django Rest 框架查詢工具
此套件透過查詢參數促進過濾操作,簡化 Django Rest Framework 視圖的過濾過程。安裝
透過 pip 安裝:
pip install django-rest-framework-query-tools
使用快速範例
假設您有一個包含作者、標題等欄位的 Books 模型。
在views.py中,使用filter_fields指定要過濾的欄位:
from rest_framework . views import APIView
from rest_framework import generics
from rest_framework import filters
from django_rest_framework_query_tools . filters . url_fliter import URLFilter
class BooksListView ( generics . ListAPIView ):
queryset = Books . objects . all ()
serializer_class = BookSerializer
filter_backends = [ URLFilter ]
filter_fields = ( 'author' ,)
現在,您可以透過傳遞查詢參數來執行篩選:
/v1/books?author=name
集成方法一:在views.py中集成
導入 QueryParamsFilter 並將其用作過濾器後端:
from drf_query_tools . filters import QueryParamsFilter
class BooksListView ( generics . ListAPIView ):
# ...
filter_backends = [ QueryParamsFilter ]
filter_fields = ( 'author' ,)
# ...
方法2:透過settings.py進行全域集成
將 QueryParamsFilter 新增至 Django Rest Framework 設定中:
REST_FRAMEWORK = {
'DEFAULT_FILTER_BACKENDS' : [
' django_rest_framework_query_tools .filters.url_fliter.URLFilter'
]
}
貢獻
歡迎透過開啟問題或提交拉取請求來做出貢獻!執照
該項目已根據 MIT 許可證獲得許可 - 有關詳細信息,請參閱許可證文件