Django表单模型中的DateTime字段

Django表单模型中的DateTime字段,django,datetime,django-models,django-forms,Django,Datetime,Django Models,Django Forms,在ModelForms中使用DateTimeField时,它们看起来像文本字段。我怎样才能使他们看起来像在管理?(当我转到管理员并添加一个节目时,我会将这些字段视为日期字段) 在模板中: <form class="form-horizontal well" action="" method="post"> {% csrf_token %} {{ ShowForm }} </br> <input type="submit" value="Submit

ModelForm
s中使用
DateTimeField
时,它们看起来像文本字段。我怎样才能使他们看起来像在管理?(当我转到管理员并添加一个节目时,我会将这些字段视为日期字段)

在模板中:

<form class="form-horizontal well" action="" method="post">
 {% csrf_token %}
    {{ ShowForm }} </br>
    <input type="submit" value="Submit">
</form>

{%csrf_令牌%}
{{ShowForm}}

您可以使用django小部件实现这一点。它非常简单,易于实现。下面是如何使用小部件来使用它的详细信息

表单中.py

from django.contrib.admin import widgets

class ShowForm(ModelForm):
    class Meta:
        model = Show 
    def __init__(self, *args, **kwargs):
        super(ShowForm, self).__init__(*args, **kwargs)
        self.fields['start_time'].widget = widgets.AdminSplitDateTime()
        self.fields['sale_end_time'].widget = widgets.AdminSplitDateTime()
模板中

<script type="text/javascript" src="/my_admin/jsi18n/"></script>
<script type="text/javascript" src="/media/admin/js/core.js"></script>

<link rel="stylesheet" type="text/css" href="/media/admin/css/forms.css"/>
<link rel="stylesheet" type="text/css" href="/media/admin/css/base.css"/>
<link rel="stylesheet" type="text/css" href="/media/admin/css/global.css"/>
<link rel="stylesheet" type="text/css" href="/media/admin/css/widgets.css"/>


就是这样。如果我不太清楚,请告诉我。或者您正面临任何错误。

您可能应该使用类似jQuery UI的东西:

日期选择器绑定到标准表单输入字段。关注 输入(单击或使用tab键)以在中打开交互式日历 小覆盖层。选择日期,单击页面上的其他位置(模糊 输入),或按Esc键关闭。如果选择了一个日期,则会收到反馈 显示为输入的值


谢谢,当我尝试这样做时,我得到一个错误:“未定义变量:widgets”在这一行:self.fields['start_time'].widget=widgets.AdminSplitDateTime()尝试“从django.contrib.admin导入widgets”可能会解决您的问题。请注意,在1.4+中,您以不同的方式调用静态文件:谢谢!但是,如果表单在模型中生成,我如何给输入字段一个类或ID以便在javascript中使用呢?而且,我需要在同一字段中的时间,不是吗?它只允许我选择日期。好的,我使用了$(“表单输入[name='start\u time']”)。单击(函数(){$(“表单输入[name='start\u time']”)。datepicker();});需要指出的是,这种方法在表单集中不起作用。
<script type="text/javascript" src="/my_admin/jsi18n/"></script>
<script type="text/javascript" src="/media/admin/js/core.js"></script>

<link rel="stylesheet" type="text/css" href="/media/admin/css/forms.css"/>
<link rel="stylesheet" type="text/css" href="/media/admin/css/base.css"/>
<link rel="stylesheet" type="text/css" href="/media/admin/css/global.css"/>
<link rel="stylesheet" type="text/css" href="/media/admin/css/widgets.css"/>