Django 表单 DateInput:将日期格式从 mm/dd/yyy 更改为 dd/mm/yy

发布于 2025-01-10 17:07:06 字数 395 浏览 1 评论 0原文

我试图将日期的默认格式从 mm/dd/YYYY 更改为 dd/mm/YYYY,但即使添加自定义格式 (format="%d/%m%/%YYYY") 结果也不会改变。

date = forms.DateField(initial=timezone.now(), widget=DateInput(attrs={'class': 'datepicker'}, format="%d/%m/%Y"), label="Data", error_messages=MY_DEFAULT_ERRORS)

为此,我重新定义了 DateInput 类,如下所示:

class DateInput(forms.DateInput):
    input_type = 'date'

I'm trying to change the default format of the date from mm/dd/YYYY to dd/mm/YYYY, but even adding a custom format (format="%d/%m%/%YYYY") the result doesn't change.

date = forms.DateField(initial=timezone.now(), widget=DateInput(attrs={'class': 'datepicker'}, format="%d/%m/%Y"), label="Data", error_messages=MY_DEFAULT_ERRORS)

To do so, I re-defined the DateInput class like this:

class DateInput(forms.DateInput):
    input_type = 'date'

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

笑红尘 2025-01-17 17:07:06

您需要传递 input_formats< /code>DateField 表单字段以覆盖接受的日期输入格式。

date = forms.DateField(
    initial=timezone.now(),
    input_formats=["%d/%m/%Y"],
    widget=DateInput(attrs={'class': 'datepicker'}, format="%d/%m/%Y"),
    label="Data",
    error_messages=MY_DEFAULT_ERRORS
)

You need to pass input_formats to the DateField form field to override the accepted date input formats.

date = forms.DateField(
    initial=timezone.now(),
    input_formats=["%d/%m/%Y"],
    widget=DateInput(attrs={'class': 'datepicker'}, format="%d/%m/%Y"),
    label="Data",
    error_messages=MY_DEFAULT_ERRORS
)
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文