【发布时间】:2025-11-29 15:00:01
【问题描述】:
我在 MongoDB 中有两个键/列。我正在使用 Django ORM 使用名为 djongo 的连接器从 mongo 获取数据。 我需要一个应用过滤器。我必须从列日期中获取差异并检查差异是否小于 24 小时。
这是我的查询 -
time_threshold = datetime.datetime.now() - timedelta(days=1)
total_count = ArticleFeed.objects.annotate(
diff=ExpressionWrapper(F('crawled') - F('published'), output_field=DurationField())
).filter(diff__lte=time_threshold,
crawled__lte=report_start_ISO, crawled__gte=last_ISO, data_source="TOI").exclude(
reject='repeat').count()
但我得到以下异常 -
文件 “/home/embed/inmobi/content_curation_project/ccp_env/lib/python3.7/site-packages/django/db/backends/base/operations.py”, 第 621 行,在 subtract_temporals 中 raise NotSupportedError("这个后端不支持 %s 减法。" % internal_type) django.db.utils.NotSupportedError: This 后端不支持 DateTimeField 减法。
请帮忙。 谢谢
【问题讨论】:
标签: django python-3.x mongodb django-orm