我想动态地将CharField
更改为ChoiceField
,因为我想从当前请求确定的可能性列表中选择值。
在ModelAdmin
中,我可以用get_form()
来做,然后说:
form.base_fields[field_name] = forms.ChoiceField(...)
但是我怎么能对InlineModelAdmin
(TabularInline)
做同样的事情呢?我在get_formset()
和get_fieldsets()
中走了一点,但找不到合适的位置。
2条答案
按热度按时间n3ipq98p1#
有一个
get_formsets
方法可以像get_form
一样用于内联。这是django.contrib.admin.options.ModelAdmin
的默认版本:gg0vcinb2#
您可以给予一个表单类给InlineModelAdmin:
https://docs.djangoproject.com/en/dev/ref/contrib/admin/#inlinemodeladmin-options
或者对于动态的东西,你可以覆盖get_form方法:
https://github.com/django/django/blob/master/django/contrib/admin/options.py#L431