在我的第一Django應用程序工作,並且我有一些DateFields
定義的模型,然後ModelForm
關閉該模型的即Django的form.as_p的DateField未示出的輸入類型如日期
models.py
class MyModel(models.Model):
...
my_date = models.DateField('my date')
...
class MyModelForm(ModelForm):
class Meta:
model = MyModel
fields = '__all__'
views.py
def show(request):
form = MyModelForm
template_name = 'myapp/show.html'
return render(request,template_name,{'form':form})
,然後在我的HTML我使用.as_p
有Django的呈現形式對我來說
<form action="/show/" method="post">{% csrf_token %}
{{ form.as_p }}
<input type="submit" value="Submit" />
</form>
但DateFields
有輸入型文本,而不是日期。有沒有辦法改變這個?通過使用
from django import forms
class DateInput(forms.DateInput):
input_type = 'date'
class MyModelForm(forms.ModelForm):
class Meta:
model = MyModel
fields = '__all__'
widgets = {
'my_date': DateInput()
}
好又簡單。得愛蟒蛇/ django –
有人知道爲什麼這不是默認? – skolsuper
@skolsuper https://code.djangoproject.com/ticket/21470 –