В настоящее время у меня есть эта модель прокси пользователя:
class UserProxy(User):
class Meta:
verbose_name = 'Staff'
verbose_name_plural = 'Staffs'
proxy = True
А на стороне администратора у меня есть следующий админ, например, так:
class StaffAdmin(UserAdmin):
def get_queryset(self, request):
qs = super(StaffAdmin, self).get_queryset(request)
return qs.filter(is_staff=True)
exclude = ('first_name', 'last_name',)
def save_model(self, request, obj, form, change):
if request.user.is_superuser:
obj.is_staff = True
obj.save()
admin.site.register(UserProxy, StaffAdmin)
Когда я go в любой форме модели прокси на администраторе выдает следующую ошибку:
«Ключ 'first_name” не найден в «UserProxyForm». Возможные варианты: date_joined, email, groups, is_active, is_staff, is_superuser, last_login, пароль, user_permissions, username. "
Я подумал, что это странно, и я пытался исключить только is_staff
, и теперь он возвращает:
" Ключ 'is_staff' не находится в «UserProxyForm». Доступны следующие варианты: date_joined, электронная почта, first_name, groups, is_active, is_superuser, last_login, last_name, пароль, user_permissions, username. "
Почему это происходит? Разве в прокси-модели не должно быть всех полей базовой модели?