4
@admin.register(Personal, site=admin_site)
class PersonalAdmin(admin.ModelAdmin):
form = ChangePersonalForm
add_form = AddPersonalForm
def get_form(self, request, obj=None, **kwargs):
if not obj:
self.form = self.add_form
return super(PersonalAdmin, self).get_form(request, obj, **kwargs)
的第一次尝试creating
或changing
一个对象,它会正常工作。 但是,之后你create
对象,每一次尝试change
对象时,你会得到的add_form
代替form
我固定,通过添加一个else块
@admin.register(Personal, site=admin_site)
class PersonalAdmin(admin.ModelAdmin):
change_form = ChangePersonalForm
add_form = AddPersonalForm
def get_form(self, request, obj=None, **kwargs):
if not obj:
self.form = self.add_form
else:
self.form = self.change_form
return super(PersonalAdmin, self).get_form(request, obj, **kwargs)
好像有某种class
缓存。
任何人都知道为什么?
...并且工作顺利。 – slackmart