我是Django的新手,我想找到Django Admin日期选择器小部件。我搜索了,但没有结果。有人能帮助我在我正在做的项目中使用它吗?我在模型中有一个datetime字段,如下所示:
fin = models.DateTimeField()
当从管理员创建模型时,它会显示小部件,但当我从项目中创建模型时,它不会显示。
8xiog9wr1#
在表单中指定小部件,如下所示:
from django.contrib.admin.widgets import AdminDateWidget class YourForm(forms.ModelForm): from_date = forms.DateField(widget=AdminDateWidget())
不要忘记在你的模板中包含脚本和css:
{{ form.media }}
taor4pac2#
如果出于某种原因,您希望在PostgreSQL DateRangeField中使用日期选择器,您可以这样做:
DateRangeField
from django.contrib.admin.widgets import AdminDateWidget from django.contrib.postgres.forms.ranges import DateRangeField, RangeWidget class YourForm(forms.ModelForm): date_range = DateRangeField(widget=RangeWidget(AdminDateWidget()))
xbp102n03#
这在Django-admin中对我有效
class CustomAdminDateWidget(forms.DateInput): class Media: js = ("/admin/jsi18n/", "/static/admin/js/vendor/jquery/jquery.js", "/static/admin/js/calendar.js", "/static/admin/js/jquery.init.js", "/static/admin/js/admin/DateTimeShortcuts.js", "/static/admin/js/core.js") def __init__(self, attrs=None, format=None): attrs = {'class': 'vDateField', 'size': '10', **(attrs or {})} super().__init__(attrs=attrs, format=format) class DateRangeForm(forms.Form): start_date = forms.DateField(label='From Date', widget=CustomAdminDateWidget) end_date = forms.DateField(label='To Date', widget=CustomAdminDateWidget)
3条答案
按热度按时间8xiog9wr1#
在表单中指定小部件,如下所示:
不要忘记在你的模板中包含脚本和css:
taor4pac2#
如果出于某种原因,您希望在PostgreSQL
DateRangeField
中使用日期选择器,您可以这样做:xbp102n03#
这在Django-admin中对我有效
模板头部