要按日期查询所有对象,可以使用Django REST framework提供的过滤器和序列化器。
首先,在你的模型中定义一个日期字段,例如:
from django.db import models
class MyModel(models.Model):
date = models.DateField()
# 其他字段...
然后,创建一个序列化器来定义如何序列化和反序列化模型对象,例如:
from rest_framework import serializers
from .models import MyModel
class MyModelSerializer(serializers.ModelSerializer):
class Meta:
model = MyModel
fields = '__all__'
接下来,在你的视图中使用过滤器来按日期查询对象,例如:
from rest_framework import filters
from rest_framework import generics
from .models import MyModel
from .serializers import MyModelSerializer
class MyModelList(generics.ListAPIView):
queryset = MyModel.objects.all()
serializer_class = MyModelSerializer
filter_backends = [filters.OrderingFilter]
ordering_fields = ['date']
现在,你可以通过发送GET请求到/mymodels/?ordering=date
来按日期查询所有对象。你还可以使用其他过滤器参数来进行更复杂的查询,例如日期范围、特定日期等。
最后,将视图添加到你的URL配置中,例如:
from django.urls import path
from .views import MyModelList
urlpatterns = [
path('mymodels/', MyModelList.as_view()),
]
现在,你可以通过访问/mymodels/
来获取按日期查询的所有对象的结果。
希望这可以帮助到你!
上一篇:按日期查询Firestore
下一篇:按日期查找表格中最新的行