У меня есть пользовательский пользователь, к которому добавлено только одно поле. Я установил отладчик django и увидел, что при создании пользователя создается много одинаковых запросов.
Как это исправить?
![enter image description here](https://i.stack.imgur.com/6vMNL.png)
models.py
class CustomUserManager(UserManager):
pass
class TestUser(AbstractUser):
phone = PhoneNumberField(null=False, blank=False, unique=True)
email = CharField(unique=True, max_length=35, null=False, blank=False)
class Meta:
db_table = '"fyzzys"."users"'
permissions = [
("can_see_payments", "payments"),
("can_see_analytics", "analytics"),
("can_see_documents", "documents"),
("can_see_sverka", "sverka"),
("can_see_ways", "ways")
]
objects = CustomUserManager()
def __str__(self):
return self.username
admin.py
admin.site.register(Permission)
class MyUserAdmin(UserAdmin):
model = TestUser
form = CustomUserChangeForm
add_form = CustomUserCreationForm
list_display = ('username', 'first_name', 'email', 'phone', 'is_active',)
list_filter = (['is_active'])
search_fields = ()
filter_horizontal = (['groups', 'user_permissions'])
fieldsets = (
('Personal info', {'fields': ('first_name', 'email', 'phone', 'password')}),
('permissions', {'fields': ('is_active', 'is_staff', 'user_permissions')})
)
add_fieldsets = UserAdmin.add_fieldsets + (
('Personal info', {'fields': ('first_name', 'email', 'phone')}),
('permissions', {'fields': ('is_active', 'is_staff', 'user_permissions')}),
)
admin.site.register(TestUser, MyUserAdmin)
UPD: по какой-то причине каждое разрешение, указанное в таблице permission
, вызывает небольшой запрос. Как его оптимизировать?
UPD2: обновление пользователя не создает дубликатов.