Para o administrador do django, como adiciono um campo ao modelo do usuário e o edito no admin?

Eu estou tentando entender melhor o administrador do django e ao mesmo tempo, estou tentando adicionar mais um campo ao administrador do usuário atual. Em models.py eu fiz

User.add_to_class('new_field', models.BooleanField(default=False))

e no admin.py eu tenho o seguinte (com fieldsets basicamente copiados do django / contrib / auth / admin.py)

class AdjUserAdmin(UserAdmin):
  list_display  = UserAdmin.list_display + ('new_field',)
  list_filter   = UserAdmin.list_filter + ('new_field',)

  fieldsets = UserAdmin.fieldsets
  fieldsets[1][1]['fields'] = ('first_name','last_name','email','new_field')

O problema é que, quando faço isso, recebo o erro:

AdjUserAdmin.fieldsets[4][1]['fields']' refers to field 'new_field' that is missing from the form.

Eu olhei para UserChangeForm, mas parece que já está puxando corretamente o usuário como o modelo. Eu não tenho certeza do porquênew_field está faltando no formulário.

obrigado

Em relação a este ser código fedorento

Eu sei que este é um jeito malcriado de fazer isso, mas a subclasse me dá problemas principalmente paraestes razões .. se eu pudesse fazê-lo funcionar da maneira indicada acima, eu ficaria feliz .. e talvez fedorento.

Em relação à maneira recomendada

Estou ciente da maneira recomendada de criar um perfil de usuário, apenas que, em determinadas situações, não vejo o mérito de criar uma nova tabela inteira e ter uma chamada adicional para o banco de dados quando tudo que eu quero armazenar é um extra pouco de informação comois_private ou algo assim. Se eu estou armazenando muito mais informações, então eu concordo, é preferível configurar um perfil de usuário.

questionAnswers(5)

yourAnswerToTheQuestion