Конфликт полей в моделях django

Рейтинг: 0Ответов: 0Опубликовано: 09.07.2023

Django выдает ошибку django.core.exceptions.FieldError: Local field 'id' in class 'User' clashes with field of the same name from base class 'UserPermissionMixin'.

Модель User:

class User(AbstractUser, UserPermissionMixin):
    id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)

Модель UserPermissionMixin:

class UserPermissionMixin(PermissionsMixin):
    groups = None
    user_permissions = None

    def has_perm(self, perm, obj=None):
        queryset = self.user_permissions.filter(codename=perm) | UserPermission.objects.filter(
            group__user=self,
            codename=perm,
        )
        return queryset.exists()

    def get_all_permissions(self, obj=None):
        return self.user_permissions.all() | UserPermission.objects.filter(group__user=self)

Я знаю, что такая ошибка возникает, если в наследуемых классах тоже было бы поле "id" (пример), но здесь оно есть только в классе "User"

Ответы

Ответов пока нет.