gpt4 book ai didi

django - Django 表单模型中的日期时间字段

转载 作者:行者123 更新时间:2023-12-04 02:05:31 26 4
gpt4 key购买 nike

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

# models.py
class Show(models.Model):
...
start_time = models.DateTimeField("Event Time")
sale_end_time = models.DateTimeField("Sale End Time")

class ShowForm(ModelForm):

class Meta:
model = Show

# views.py
def createshow(request):
if request.method == 'POST':
form = ShowForm(request.POST)
if form.is_valid():
form.save()
return HttpResponseRedirect('/showsaved')
else:
form = ShowForm()
return render(request, 'BizCreateShow.html', {'ShowForm' : form})

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

最佳答案

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

forms.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"/>

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

关于django - Django 表单模型中的日期时间字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15643019/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com