首页 > 解决方案 > 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.']

如何获取上述范围内的数据?任何建议都受到高度赞赏。

标签: pythondjangodjango-views

解决方案


为什么不只使用 tr_date__lt='2077-05-01' 即小于 5/1 - 我个人从未听说过任何一个月都有 32 天,但如果您只过滤小于 5/1 不会有同样的结果?


推荐阅读