pab*_*ete 6 python django html5 django-widget
具体来说,我想在一个表单中呈现日期小部件,但我希望它"成为"HTML5(所以我可以忘记javascript或其他任何东西并相信Chrome,Opera和Safari来显示日期选择器).
请不要使用JavaScript解决方案,我已经在网上找到了这些解决方案.
这是我的代码片段,但它仍然将表单字段的类型属性thedate作为"文本".
#models.py
class MyModel(models.Model):
user = models.ForeignKey(User)
thedate = models.DateField()
#forms.py
class MyModelForm(ModelForm):
class Meta:
model = MyModel
widgets = {
'thedate': TextInput(attrs={'type': 'date'}),
}
Run Code Online (Sandbox Code Playgroud)
任何人都可以请光明灯?
提前致谢.
jpi*_*pic 12
安装django-html5:pip install django-html5
在forms.py中, import html5.forms.widgets as html5_widgets
组 widgets['thedate'] = html5_widgets.DateInput
我没有亲自测试它,因为我发现了诀窍但是多亏了你我可能会用它:D
您也可以制作自己的小部件,这是一个想法:
from django import forms
class Html5DateInput(forms.DateInput):
input_type = 'date'
Run Code Online (Sandbox Code Playgroud)
详情请参阅django/forms/widgets.py;)
这是一个简单的:
将此代码放在 form.py 的任何位置
forms.DateInput.input_type="date"
forms.DateTimeInput.input_type="datetime-local"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4178 次 |
| 最近记录: |