如何使用django ORM将__contains应用于格式化日期?

问题描述 投票:0回答:1

我想实现数据库搜索,并且需要按包含搜索请求的日期筛选查询集。问题在于用户将看到格式化的日期(如dd.mm.yyyy),并且期望搜索以相同的方式查看它,但是默认__contains考虑yyyy-mm-dd格式的日期。在使用__contains之前如何将过滤器应用于DateField?我需要使用django orm的方法,因为否则它将太长(不使用sql)。

我试图将DATE_FORMAT = 'd.m.Y'设置为令人满意的格式,但没有效果(即使设置USE_L10N = False

也考虑过创建自定义查找,但不确定如何实现

python sql django django-models django-orm
1个回答
0
投票

您可以使用datetime更改格式,例如:

import datetime
datetime.datetime.strptime('01.01.2020', "%d.%m.%Y").strftime("%Y-%m-%d")

将给您'2020-01-01'

© www.soinside.com 2019 - 2024. All rights reserved.