-
這提供了一種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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。