如何更改Django ADMIN中DateField实例的默认控件?更改Django中日期字段的默认控件admin
我知道如何做到这一点的ModelForm - How do you change the default widget for all Django date fields in a ModelForm? - 通过提供formfield_callback检查字段类型,然后提供一个表单字段与新的小部件。
但是,我的一些ModelAdmin的可能已经有一个自定义的ModelForm,有些没有。我不想在有日期字段的地方提供/更改ModelForm(这就是要点)。
虽然可以用于子类化的自定义ModelAdmin可以。 ModelAdmin如何更改其表单的日期字段,而不管是否提供了自定义的ModelForm?
也许一个ModelAdmin用get_form()调用它的super然后设置窗体的formfield_callback?似乎有点复杂,不确定的时间,也有三件事情要注意的是,如果任何ModelAdmin需要进一步定制...
PS:我在问这个https://stackoverflow.com/questions/8484811/jquery-datepicker-in-django-admin后被错误地关闭是一个“确切的复制“上述ModelForm问题。我希望现在的区别很明显。
顺便说一句,我个人的动机是Django管理员的默认日期选择器的年份导航。对于生日来说真的很糟糕:-)是的,这是一张三年老票https://code.djangoproject.com/ticket/9388
谢谢你。这个项目确实在使用grappelli。鉴于这是一个真正的javascript问题(“日历不够好”),我会选择1.并以这种方式更改日历。 –
@BurhanKhalid位于默认JavaScript的位置在哪里? –