python - Django:值的格式正确(YYYY-MM-DD),但日期无效
问题描述
我正在使用尼泊尔日期,以下日期是正确的,但 django 不让我运行查询。
search_range = Trans.objects.filter(tr_date__gte='2077-04-01', tr_date__lte='2077-04-32')
如果我将日期设为 2077-04-30,我遵循的代码可以正常工作。但根据尼泊尔历法,第4个月有32天。当我尝试在第 32 天运行查询时,django 返回以下错误。
ValidationError at /trans/list/search/
['“2077-04-32” value has the correct format (YYYY-MM-DD) but it is an invalid date.']
Request Method: GET
Request URL: http://127.0.0.1:8000/trans/list/search/
Django Version: 3.1
Exception Type: ValidationError
Exception Value:
['“2077-04-32” value has the correct format (YYYY-MM-DD) but it is an invalid date.']
如何获取上述范围内的数据?任何建议都受到高度赞赏。
解决方案
为什么不只使用 tr_date__lt='2077-05-01' 即小于 5/1 - 我个人从未听说过任何一个月都有 32 天,但如果您只过滤小于 5/1 不会有同样的结果?
推荐阅读
- assembly - 直接访问堆栈
- python - 如何在同一轴上添加单独的刻度线集
- aws-pinpoint - 每个 AWS Pinpoint 项目而不是全局的消息模板和发件人电子邮件,使用 API
- postgresql - 将本地更改同步到远程数据库
- c# - EWS 过滤掉生日和假期日历
- android - 如何为 kotlin 委托属性使用不同的类型
- javascript - 原生 JS 中的交叉兼容 XML 漂亮打印
- python - 列表中的 Django Choicefield
- scala - Spark Scala 代码与 pyspark 版本的工作方式不同
- javascript - 以编程方式在图层中重新排序 PDF 内容 (OCG)