有没有一种简单的方法来更改 Django 表单的日期时间输入字段的格式?

Posted

技术标签:

【中文标题】有没有一种简单的方法来更改 Django 表单的日期时间输入字段的格式?【英文标题】:Is there an easy way to change the format of a datetime input field of a Django form? 【发布时间】:2012-06-02 00:18:03 【问题描述】:

我知道在名为 date 的内置 Django 过滤器中。

我想修改 DateTimeInput 的日期格式,但如果不实际手动写出整个 html,我无法弄清楚。所以目前我做这样的事情:

<input id=" field.id_for_label " type="text" name=" field.name " value=" field.value|date:"F j, Y, g:i a" "
    class="round datetimepicker % if field.errors %error-input% endif %"
/>

注意我是如何使用value=" field.value|date:"F j, Y, g:i a" " 的(那些双引号确实有效)。

有没有更简单的方法来做到这一点?最好我想保持与我的其他输入字段相同的格式:

 field|add_class:"round datetimepicker"|add_error_class:"error-input" 

其中add_classadd_error_class 来自Django widget tweaks app。

【问题讨论】:

【参考方案1】:

我检查了文档。 DateTimeInput widget 采用一个可选参数作为其初始值的格式。 希望有帮助

【讨论】:

另外检查the DateTimeField form field 很好。我不知道我是怎么错过的。谢谢!我想我已经习惯了自定义过滤器小部件,以至于忘记检查如何通过views.pyforms.py 执行添加选项的原始方法。

以上是关于有没有一种简单的方法来更改 Django 表单的日期时间输入字段的格式?的主要内容,如果未能解决你的问题,请参考以下文章

在保持 HTML 样式的同时编写 Django 表单

Django 1.8 和 Django Crispy Forms:是不是有一种简单易行的方法来实现日期选择器?

Django:如何更改内联表单集中的字段小部件

在 Django 中是不是有一种惯用的方法来编写不显眼的 JavaScript 和/或进行 AJAX 表单提交?

使用 Ajax jQuery 提交 Django 表单的简单方法

Django 中的内联表单验证