在我的模型中,我有一個Datefield。所以我想使用Datepicker。如何使用Django-Admin Datepicker?CreateView中的DatepickerWidget
我已經找到了一個在窗體中做這個事情的例子,但我只設計了一個模型。 是否可以在我的模型中定義這個小部件?
在我的模型中,我有一個Datefield。所以我想使用Datepicker。如何使用Django-Admin Datepicker?CreateView中的DatepickerWidget
我已經找到了一個在窗體中做這個事情的例子,但我只設計了一個模型。 是否可以在我的模型中定義這個小部件?
您可以使用get_form
方法重寫控件屬性:
class MyCreateView(CreateView):
def get_form(self, form_class):
form = super(MyCreateView, self).get_form(form_class)
form.fields['date_field'].widget.attrs.update({'class': 'datepicker'})
return form
對於django 1.10,get_form的form_class接受默認的None,所以它可以被跳過。 [參考文獻](https://github.com/django/django/blob/711123e1cdaf3b08c876c045d8d38decdc7a63d3/django/views/generic/edit.py#L30)。另外,爲了完全覆蓋這個小部件,而不是隻更新html class屬性,可以使用'form.fields ['field_name']。widget = SomeNewWidget' – shadi
我會建議你創建的那個形式文件導入的ModelForm, 管理員日期選擇控件
from django.contrib.admin.widgets import AdminDateWidget
,並確定該字段的小部件使用attrs = AdminDateWidget
並在模板中放置{{form.media}}以包含widget中的javascript和css文件
是否必須是admin-datepicker或者您可以使用任何datepicker js插件? – mariodev
我使用datepicker窗體jquery-ui。 – spitzbuaamy