Quando si utilizza DateTimeField
in ModelForm
s, sembrano campi di testo. Come posso renderli simili all'amministratore? (Quando vado al admin e aggiungo uno spettacolo che vedo i campi come campi data)Campo DateTime in modello 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})
Nel modello:
<form class="form-horizontal well" action="" method="post">
{% csrf_token %}
{{ ShowForm }} </br>
<input type="submit" value="Submit">
</form>
Grazie, quando provo che ottengo un errore: "variabile non definita: widget" su questa linea: self.fields [ 'start_time']. widget = widgets.AdminSplitDateTime() – misschoksondik
prova questo "da django.contrib.admin import widget" potrebbe risolvere il tuo problema. –
Si noti che in 1.4+ si chiamano i file statici in modo diverso: http://stackoverflow.com/a/15292176/1863061 – Laci