Python 如何在Django中将默认日期格式AAAA-MM-DD更改为DD/MM/yyyy?

Python 如何在Django中将默认日期格式AAAA-MM-DD更改为DD/MM/yyyy?,python,django,date-format,Python,Django,Date Format,我的地区日期格式为dd/mm/yyyy,Django正在重新查询AAAA-mm-dd 当用户输入2009年11月4日Django提出: _('Enter a valid date in YYYY-MM-DD format.')) Im使用简单的html输入字段type=“text”,而不是forms.DateField 谢谢:)我假设您使用的是forms.DateField。如果是这样,您需要提供一个input\u formats参数,如下所示: class MyForm(forms.For

我的地区日期格式为dd/mm/yyyy,Django正在重新查询AAAA-mm-dd

当用户输入2009年11月4日Django提出:

_('Enter a valid date in YYYY-MM-DD format.')) 
Im使用简单的html输入字段type=“text”,而不是forms.DateField


谢谢:)

我假设您使用的是
forms.DateField
。如果是这样,您需要提供一个
input\u formats
参数,如下所示:

class MyForm(forms.Form):
    start_date = forms.DateField(input_formats=['%d/%m/%Y'])
input_formats只获取您想要接受的格式列表


有关更多信息,请参阅。

我假设您使用的是
forms.DateField
。如果是这样,您需要提供一个
input\u formats
参数,如下所示:

class MyForm(forms.Form):
    start_date = forms.DateField(input_formats=['%d/%m/%Y'])
input_formats只获取您想要接受的格式列表


有关更多信息,请参阅。

根据OP的帖子和评论,这里似乎有更多内容,而不仅仅是对日期字段使用输入格式,尽管您希望这样做。消息“输入YYYY-MM-DD格式的有效日期”是一个例外,不是一个表单验证错误。如果尝试使用不是“YYYY-MM-DD”的日期字符串保存模型实例,则会出现此异常

所需要的是在表单中使用DateField,然后使用清理后的数据(datetime对象)实例化模型。看起来OP是在用字符串而不是datetime对象实例化模型

Django文档的这一部分讨论如何准备日期字段数据:

根据OP的帖子和评论,这里似乎不仅仅是使用日期字段的输入格式,尽管您希望这样做。消息“输入YYYY-MM-DD格式的有效日期”是一个例外,不是一个表单验证错误。如果尝试使用不是“YYYY-MM-DD”的日期字符串保存模型实例,则会出现此异常

所需要的是在表单中使用DateField,然后使用清理后的数据(datetime对象)实例化模型。看起来OP是在用字符串而不是datetime对象实例化模型

Django文档的这一部分讨论如何准备日期字段数据:

rich,我按照你的建议做了,但仍然存在相同的问题:ValidationError异常值:Introducta una fecha válida en formato AAAA-MM-DD。你能粘贴完整的代码吗?在forms.py和views.py中?我注意到在您的代码中有一些东西必须在尝试确定ValidationError之前解决。最值得注意的是is\u valid应该是is\u valid()。我对粘贴的代码()进行了修改,并突出显示了我修改的重要行。(pastebin.com/d29e92c68)未知的帖子id,它可能已过期或已被删除:(您是否将其设置为1天到期?rich,我按照您的建议执行了,但仍然存在相同的问题:ValidationError异常值:IntroductsCA una fecha válida en formato AAAA-MM-DD。您是否可以粘贴完整的代码?来自forms.py和views.py?我注意到您的代码中有一些问题需要在尝试确定有效性之前加以解决。)tionError。最值得注意的是is_valid应该是is_valid()。我对粘贴的代码()进行了修改,并突出显示了我修改的重要行。(pastebin.com/d29e92c68)未知的帖子id,它可能已过期或已被删除:(您是否将其设置为1天过期?