Khi sử dụng DateTimeField
trong ModelForm
s, chúng trông giống như trường văn bản. Làm thế nào tôi có thể làm cho họ trông giống như trong admin? (Khi tôi đi đến admin và thêm một chương trình tôi thấy các trường như trường ngày)Trường Ngày giờ trong mô hình biểu mẫu Django
# 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})
Trong mẫu:
<form class="form-horizontal well" action="" method="post">
{% csrf_token %}
{{ ShowForm }} </br>
<input type="submit" value="Submit">
</form>
Cảm ơn, khi tôi cố gắng mà tôi nhận được một lỗi: "Không xác định biến: widget" trên dòng này: self.fields [ 'start_time']. widget = widgets.AdminSplitDateTime() – misschoksondik
thử này "từ django.contrib.admin nhập khẩu vật dụng" có thể nó sẽ giải quyết vấn đề của bạn. –
Lưu ý rằng trong 1,4+ bạn gọi các tệp tĩnh khác nhau: http://stackoverflow.com/a/15292176/1863061 – Laci