最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

django rest framework 過濾時間操作

 更新時間:2020年07月12日 09:40:56   作者:小恩阿  
這篇文章主要介紹了django rest framework 過濾時間操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

通常我們會用到過濾兩個時間段內(nèi)的一些數(shù)據(jù), 當(dāng)我們用django rest framework的時候, 他可以根據(jù)字段filter_fields進(jìn)行過濾, 但是對于日期來說并不起作用, 這個時候就需要我們設(shè)置重寫queryset方法進(jìn)行捕捉了

重寫get_queryset()

def get_queryset(self):
  start = self.request.query_params.get('fault_start_time', None)
  stop = self.request.query_params.get('fault_end_time', None)
  if start and stop:
    return models.ServerFaultRecord.objects.filter(fault_start_time__gte=start).filter(fault_end_time__lte=stop)
  return models.ServerFaultRecord.objects.all()

補(bǔ)充知識:django中時間區(qū)間過濾,排序

1.過濾下載

pip install django-filter

2.下載后注冊

INSTALLED_APPS=['django_filters',]

3.導(dǎo)入rest_framework

from django_filters import rest_framework

class DoctorsFilter(rest_framework.FilterSet):
  authentication_classes = [TokenAuthentication]
  #開始時間
  start_date = rest_framework.DateFilter(field_name='start_date', lookup_expr='gte')
  #結(jié)束時間
  end_date = rest_framework.DateFilter(field_name='end_date', lookup_expr='lte')

4.在類中的使用

from django_filters.rest_framework import DjangoFilterBackend
from rest_framework.viewsets import ModelViewSet
class DoctorsViewSet(ModelViewSet):

   filter_backends = [DjangoFilterBackend]
   #過濾其他的字段
   filter_fields = ('id', 'patient', 'doc_type',)    #指向要過濾的類
   filter_class = DoctorsFilter

2.排序

#1.導(dǎo)入OrderingFilter
from rest_framework.filters import OrderingFilter

#2.在類中的使用
class CarsModelViewSet(ModelViewSet):
  
      queryset =models的類
      serializer_class=序列化組件
         filter_backends = [OrderingFilter]
        #/api/cars/?ordering=-id 倒序       #/api/cars/?ordering=id 正序
      ordering_fields = ('id', )

以上這篇django rest framework 過濾時間操作就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論

延边| 海安县| 湄潭县| 新昌县| 无棣县| 平凉市| 临泽县| 太白县| 高雄县| 渝中区| 石门县| 安乡县| 安徽省| 博爱县| 南宫市| 郁南县| 和龙市| 满城县| 浦北县| 山阴县| 蓝山县| 兴隆县| 潮安县| 叶城县| 晋江市| 乐亭县| 南召县| 浪卡子县| 博白县| 威宁| 竹溪县| 布拖县| 和林格尔县| 嵊州市| 武宣县| 区。| 蚌埠市| 鹤峰县| 黎平县| 新宾| 开原市|