nuk*_*ukl 8 django django-forms
我在我的项目中有自定义文本字段小部件和许多表单.要使用此自定义小部件,我需要编写:
formfield_overrides = {
TextField: {'widget': CustomTextFieldWidget},
}
Run Code Online (Sandbox Code Playgroud)
各种admin.ModelAdmin形式,这只是丑陋.
有没有办法只编写一次并在项目中的所有表单中使用自定义小部件?
不,没有钩子可以覆盖整个项目中的formfield小部件.
您可以使所有模型管理类继承自子类admin.ModelAdmin,然后您只需设置formfield_overrides一次.
class MyModelAdmin(admin.ModelAdmin):
"""
This is the parent class that all model
admins in the project inherit from
"""
formfield_overrides = {
TextField: {'widget': CustomTextFieldWidget},
}
class AppleAdmin(MyModelAdmin):
...
class BananaAdmin(MyModelAdmin):
...
#etc
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
707 次 |
| 最近记录: |