-
與
formfield_for_foreignkey
和formfield_for_manytomany
方法一樣,formfield_for_choice_field
方法可以被覆蓋以更改已聲明選項的字段的默認表單字段。例如,如果超級用戶可用的選項與普通員工可用的選項不同,您可以執行以下操作:class MyModelAdmin(admin.ModelAdmin): def formfield_for_choice_field(self, db_field, request, **kwargs): if db_field.name == "status": kwargs['choices'] = ( ('accepted', 'Accepted'), ('denied', 'Denied'), ) if request.user.is_superuser: kwargs['choices'] += (('ready', 'Ready for deployment'),) return super().formfield_for_choice_field(db_field, request, **kwargs)
注意
在表單域上設置的任何
choices
屬性將僅限於表單域。如果模型上的相應字段設置了選項,則提供給表單的選項必須是這些選項的有效子集,否則在保存之前驗證模型本身時,表單提交將失敗並顯示ValidationError
本文介紹django.contrib.admin.ModelAdmin.formfield_for_choice_field
的用法。
聲明
ModelAdmin.formfield_for_choice_field(db_field, request, **kwargs)
相關用法
- Python Django ModelAdmin.formfield_for_foreignkey用法及代碼示例
- Python Django ModelAdmin.formfield_for_manytomany用法及代碼示例
- Python Django ModelAdmin.formfield_overrides用法及代碼示例
- 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_for_choice_field。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。