Конфликт полей в моделях django
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"
Источник: Stack Overflow на русском