Я создал модель профиля, которая содержит дополнительные поля для модели пользователя. Он работает так, как ожидалось, но когда я добавляю нового пользователя, добавленные поля отображаются как на странице «Добавить пользователя» (первая страница), так и на странице «Изменить пользователя» (вторая страница). Как я могу запретить появление моих добавленных полей на странице «Добавить пользователя»?В администраторе Django я могу помешать появлению добавленных полей профиля пользователя на странице «Добавить пользователя»?
models.py
from django.db import models
from django.contrib.auth.models import User
class Member(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE)
my_added_field = models.CharField(max_length=15)
admin.py
from django.contrib import admin
from django.contrib.auth.admin import UserAdmin
from django.contrib.auth.models import User
from .models import Member
class MemberInline(admin.StackedInline):
model = Member
class MemberAdmin(UserAdmin):
inlines = (MemberInline,)
admin.site.unregister(User)
admin.site.register(User, MemberAdmin)
Нужно ли расширять UserCreationForm и исключать там поле? – Mike
Нет, вы должны поместить этот код в сериализатором класса Meta: исключить = «вы-имя-поля» –
Я новичок в веб-разработки и Django, вы можете дать ссылку, где я могу прочитать больше об этом ? Информация, которую я нашел на djangoproject.com, описывает использование сериализаторов для перевода моделей в другие форматы (например, json, xml) и для создания настраиваемых полей. Кроме того, мне интересно, исключает ли этот подход мои добавленные поля из всех форм? Я хочу исключить их только из UserCreationForm. – Mike