【发布时间】:2017-09-05 21:34:47
【问题描述】:
我想在 Django admin 中显示不同的表单字段以添加和更改视图。
如果是add,则显示表单字段file_upload,如果是change,则显示模型字段cname 和mname
来自 admin.py 的代码
class couplingAdmin(admin.ModelAdmin):
list_display = ('cname','mname')
form = CouplingUploadForm #upload_file is here
def get_form(self, request, obj=None, **kwargs):
# Proper kwargs are form, fields, exclude, formfield_callback
if obj: # obj is not None, so this is a change page
kwargs['exclude'] = ['upload_file',]
else: # obj is None, so this is an add page
kwargs['exclude'] = ['cname','mname',]
return super(couplingAdmin, self).get_form(request, obj, **kwargs)
如果是add,那很好,但如果是change,我会得到所有字段,即cname、mname、upload_file。
请建议我如何从管理员的更改视图中删除 upload_file。
非常感谢任何帮助。提前致谢。
【问题讨论】: