-
这提供了一种quick-and-dirty 方式来覆盖一些在管理员中使用的
Field
formfield_overrides
是一个字典,将字段类映射到参数字典,以便在构造时传递给字段。由于这有点抽象,让我们看一个具体的例子。
formfield_overrides
最常见的用途是为特定类型的字段添加自定义小部件。因此,假设我们已经编写了一个RichTextEditorWidget
,我们希望将其用于大型文本字段,而不是默认的<textarea>
。以下是我们的做法:from django.contrib import admin from django.db import models # Import our custom widget and our model from where they're defined from myapp.models import MyModel from myapp.widgets import RichTextEditorWidget class MyModelAdmin(admin.ModelAdmin): formfield_overrides = { models.TextField: {'widget': RichTextEditorWidget}, }
请注意,字典中的键是实际的字段类,
not
是一个字符串。该值是另一个字典;这些参数将传递给表单字段的__init__()
方法。有关详细信息,请参阅表单 API。警告
如果您想使用带有关系字段的自定义小部件(即
ForeignKey
ManyToManyField
raw_id_fields
、radio_fields
或autocomplete_fields
中包含该字段的名称。formfield_overrides
不允许您更改设置了raw_id_fields
、radio_fields
或autocomplete_fields
的关系字段上的小部件。这是因为raw_id_fields
、radio_fields
和autocomplete_fields
暗示了它们自己的自定义小部件。
本文介绍django.contrib.admin.ModelAdmin.formfield_overrides
的用法。
声明
ModelAdmin.formfield_overrides
相关用法
- Python Django ModelAdmin.formfield_for_choice_field用法及代码示例
- Python Django ModelAdmin.formfield_for_foreignkey用法及代码示例
- Python Django ModelAdmin.formfield_for_manytomany用法及代码示例
- Python Django ModelAdmin.fields用法及代码示例
- Python Django ModelAdmin.fieldsets用法及代码示例
- Python Django ModelAdmin.get_changeform_initial_data用法及代码示例
- Python Django ModelAdmin.get_formset_kwargs用法及代码示例
- Python Django ModelAdmin.get_urls用法及代码示例
- Python Django ModelAdmin.readonly_fields用法及代码示例
- Python Django ModelAdmin.prepopulated_fields用法及代码示例
- Python Django ModelAdmin.empty_value_display用法及代码示例
- Python Django ModelAdmin.get_form用法及代码示例
- Python Django ModelAdmin.get_search_results用法及代码示例
- Python Django ModelAdmin.autocomplete_fields用法及代码示例
- Python Django ModelAdmin.date_hierarchy用法及代码示例
- Python Django ModelAdmin.get_formsets_with_inlines用法及代码示例
- Python Django ModelAdmin.save_model用法及代码示例
- Python Django ModelAdmin.view_on_site用法及代码示例
- Python Django ModelAdmin.get_inline_instances用法及代码示例
- Python Django ModelAdmin.get_changelist_formset用法及代码示例
- Python Django ModelAdmin.get_sortable_by用法及代码示例
- Python Django ModelAdmin.get_ordering用法及代码示例
- Python Django ModelAdmin.get_changelist_form用法及代码示例
- Python Django ModelAdmin.get_actions用法及代码示例
- Python Django ModelAdmin.list_display用法及代码示例
注:本文由纯净天空筛选整理自djangoproject.com大神的英文原创作品 django.contrib.admin.ModelAdmin.formfield_overrides。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。