เครื่องมือสืบค้นกรอบงาน Django Rest
แพ็คเกจนี้อำนวยความสะดวกในการดำเนินการกรองผ่านพารามิเตอร์การสืบค้น ทำให้กระบวนการกรองสำหรับมุมมอง Django Rest Framework ง่ายขึ้น การติดตั้ง
ติดตั้งผ่าน pip:
pip install django-rest-framework-query-tools
ตัวอย่างการใช้งานด่วน
สมมติว่าคุณมีโมเดลหนังสือที่มีฟิลด์ต่างๆ เช่น ผู้แต่ง ชื่อเรื่อง ฯลฯ หากต้องการกรองหนังสือตามผู้เขียนโดยใช้พารามิเตอร์การสืบค้น:
ใน 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
การรวมวิธีที่ 1: การรวมใน 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 - ดูรายละเอียดในไฟล์ใบอนุญาต