DRF 對 Django 原生的 Request 和 Response作了一層封裝,給咱們的使用帶來了更大的便利前端
返回請求正文的已解析內容,GET和POST都同樣bash
裏面放有請求頭傳遞過來的參數
不止是GET的請求頭,POST PUT DELETE的請求頭都會在這裏面
建議使用request.query_params而不是Django的標準request.GET框架
內容解析的 parser
一般不須要訪問此屬性ui
獲取當前的用戶spa
一般不須要訪問此屬性code
支持各類類型的返回get
結合 DRF 的 filter 過濾數據string
class GoodsListView(mixins.ListModelMixin, viewsets.GenericViewSet):
# queryset = Goods.objects.all() 寫了 get_queryset(self): 就能夠不用寫這個配置
serializer_class = GoodsSerializer
pagination_class = GoodsPagination # 調用自定義的分頁
def get_queryset(self):
queryset = Goods.objects.all() # 默認返回所有數據
price_min = self.requset.query_params.get("price_min", 0) # 獲取前端請求頭中的參數,後一個參數是默認值
if price_min:
queryset = queryset.filter(shop_price__gt=int(price_min))
return queryset
複製代碼