在Django-Filter/DRF中获取"今天"数据,可以通过以下步骤实现:
from django_filters import rest_framework as filters
from datetime import date
class TodayFilter(filters.FilterSet):
created_at = filters.DateFilter(field_name='created_at', lookup_expr='date', method='filter_today')
def filter_today(self, queryset, name, value):
return queryset.filter(**{
f'{name}__year': value.year,
f'{name}__month': value.month,
f'{name}__day': value.day,
})
class Meta:
model = YourModel # 替换为你的模型类
fields = ['created_at'] # 替换为你需要过滤的字段
from rest_framework import generics
from .filters import TodayFilter
from .serializers import YourModelSerializer
from .models import YourModel
class YourModelListView(generics.ListAPIView):
queryset = YourModel.objects.all()
serializer_class = YourModelSerializer
filter_class = TodayFilter # 添加这一行
from django.urls import path
from .views import YourModelListView
urlpatterns = [
path('your-models/', YourModelListView.as_view(), name='your-models-list'),
]
现在,当你访问"/your-models/"路径时,将只返回"今天"创建的数据。你可以根据自己的需求进行进一步的定制和调整。
注意:以上代码示例中的"YourModel"、"YourModelSerializer"等需要根据你的实际情况进行替换。另外,这里没有提及具体的腾讯云产品和链接地址,你可以根据自己的需求选择适合的腾讯云产品进行部署和运行。
领取专属 10元无门槛券
手把手带您无忧上云