首页 > 解决方案 > 提示:向“CustomUser.user_permissions”或“User.user_permissions”的定义添加或更改相关名称参数

问题描述

我需要帮助。我正在 Django 中创建一个应用程序,但在迁移我的自定义用户类时遇到了一些麻烦。错误是:

错误:auth.User.groups:(fields.E304)“User.groups”的反向访问器与“Usuario.groups”的反向访问器冲突。提示:在“User.groups”或“Usuario.groups”的定义中添加或更改related_name 参数。auth.User.user_permissions:(fields.E304)“User.user_permissions”的反向访问器与“Usuario.user_permissions”的反向访问器冲突。提示:在“User.user_permissions”或“Usuario.user_permissions”的定义中添加或更改related_name 参数。usuarios.Usuario.groups:(fields.E304)“Usuario.groups”的反向访问器与“User.groups”的反向访问器冲突。提示:在“Usuario.groups”或“User.groups”的定义中添加或更改related_name 参数。usuarios.Usuario.user_permissions:(fields.E304)“Usuario.user_permissions”的反向访问器与“User.user_permissions”的反向访问器冲突。提示:向“Usuario.user_permissions”或“User.user_permissions”的定义添加或更改相关名称参数。

现在,这是我的代码:

我的模型:


class CustomUser(AbstractUser): email = models.EmailField(unique=True, max_length=80) USERNAME_FIELD = 'email' REQUIRED_FIELDS = ['USERNAME']

def __str__(self):
    return self.email

class Perfil(models.Model):
    user=models.OneToOneField(CustomUser, related_name="usuario_user" , on_delete=models.CASCADE)                             
    nacionality= models.ForeignKey(Paises, on_delete=models.DO_NOTHING)    
    rol= models.ForeignKey(Rol, on_delete=models.DO_NOTHING) def str(self): return self.CustomUser
    birth_date=models.DateField()

在我的 settings.py 中:

AUTH_USER_MODELS= 'users.CustomUser'
LOGIN_REDIRECT_URL= reverse_lazy('home')
LOGOUT_REDIRECT_URL= reverse_lazy('login')
LOGIN_URL = reverse_lazy('login')

# Application definition

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'apps.users',
]```

标签: pythondjangoabstractuser

解决方案


推荐阅读