程序问答   发布时间:2022-06-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了如何在 django rest 框架中的两个日期范围之间查找数据?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决如何在 django rest 框架中的两个日期范围之间查找数据??

开发过程中遇到如何在 django rest 框架中的两个日期范围之间查找数据?的问题如何解决?下面主要结合日常开发的经验,给出你关于如何在 django rest 框架中的两个日期范围之间查找数据?的解决方法建议,希望对你解决如何在 django rest 框架中的两个日期范围之间查找数据?有所启发或帮助;

创建一个简单的视图来列出两个日期范围之间的三列。在做一些研究时,我发现我们有一些可以使用的 Django ORM。因此,我尝试在我的视图中实现它,如下所示。

from rest_framework.response import Response
import django_filters.rest_framework
from rest_framework.generics import ListAPIVIEw
from .models import Revenue
from .serializers import DataListserializers

# Create your vIEws here.


class DataListVIEw(ListAPIVIEw):
    serializer_class = DataListserializers
    pagination_class = None
    queryset = Revenue.objects.all()
    filter_BACkends = [django_filters.rest_framework.DjangoFilterBACkend,django_filters.OrderingFilter]

    def get_queryset(self):
        time_filter = self.queryset.objects.filter(datefIEld__gte=<some_date>,datefIEld__lte=<some date>)

如您所见,我编写了一个简单的 ListAPIVIEw。当我们在 Django ORM 控制台中执行上述查询时,我们可以给出一些日期范围。但是如何将上述查询合并到视图中呢? datefIEld__gtedatefIEld__lte 的值是多少?

@H_545_2@models.py

class Revenue(models.Model):
    date = models.DateFIEld(auto_Now_add=TruE)
    fname = models.CharFIEld(max_length=100)
    lname = models.CharFIEld(max_length=100)
    eno = models.CharFIEld(max_length=100)

解决方法

您可以使用 __range 获取一些日期范围,如下所示:

time_filter = self.queryset.objects.filter(date__range=(<some_date>,<some_date>) )
,

我在 ming 的回复的帮助下解决了这个问题。以下是最终视图。

class DataListView(ListAPIView):
    serializer_class = DataListserializers
    pagination_class = None
    queryset = Revenue.objects.all()
    permission_classes = [permissions.AllowAny]

        def get_queryset(self):
        start_date = datetiR_256_11845@e.date.today()
        END_DATE = start_date + datetiR_256_11845@e.timedelta(days=6)
        time_filter = self.queryset.filter(date__range=(start_date,END_DATE))
        ser = DataListserializers(time_filter,many=TruE).data
        return ser

有了这个我就可以存储当前日期的数据,但是当我尝试上传带有旧年份数据的 CSV 文件时,我收到了错误消息。好吧,我将为此打开一个不同的查询。这篇文章可以结束,因为它解决了目的

大佬总结

以上是大佬教程为你收集整理的如何在 django rest 框架中的两个日期范围之间查找数据?全部内容,希望文章能够帮你解决如何在 django rest 框架中的两个日期范围之间查找数据?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。