Добавьте или измените аргумент related_name в определение для «User.user_permissions» или «User.user_permissions» не перенесено, я создаю crm, и я

#python #django #django-models #django-forms #django-migrations

Вопрос:

Я создаю эту crm, и у меня есть эта ошибка, я поделюсь с вами кодом

я снимаю это видео, и я получил эту ошибку

https://www.youtube.com/watch?v=fOukA4Qh9QAamp;t=4925s

 ERRORS:
auth.User.groups: (fields.E304) Reverse accessor for 'User.groups' clashes with reverse accessor for 'User.groups'.
        HINT: Add or change a related_name argument to the definition for 'User.groups' or 'User.groups'.
auth.User.user_permissions: (fields.E304) Reverse accessor for 'User.user_permissions' clashes with reverse accessor for 'User.user_permissions'.        HINT: Add or change a related_name argument to the definition for 'User.user_permissions' or 'User.user_permissions'.
leads.User.groups: (fields.E304) Reverse accessor for 'User.groups' clashes with reverse accessor for 'User.groups'.
        HINT: Add or change a related_name argument to the definition for 'User.groups' or 'User.groups'.
leads.User.user_permissions: (fields.E304) Reverse accessor for 'User.user_permissions' clashes with reverse accessor for 'User.user_permissions'.
        HINT: Add or change a related_name argument to the definition for 'User.user_permissions' or 'User.user_permissions'.
 

Setting.py

Вот мой код настроек «»»

 INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'leads',


# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/3.1/howto/static-files/

STATIC_URL = '/static/'

AUTH_USER_MODELS = 'leads.User'
 

models.py

Вот код моей модели

 from django.db import models
from django.contrib.auth.models import AbstractUser

class User(AbstractUser):
    pass

class Lead(models.Model):
    first_name = models.CharField(max_length=20)
    last_name = models.CharField(max_length=20)
    phone = models.BooleanField(default=False)
    agent = models.ForeignKey("Agent",on_delete=models.CASCADE)


class Agent(models.Model):
    user = models.OneToOneField(User, on_delete=models.CASCADE)
 

Комментарии:

1. я не могу сразу увидеть проблему, но я бы предположил, что если вам не нужно добавлять подкласс пользователя в класс AbstractUser, поэтому… удаление класса пользователя и удаление AUTH_USER_MODELS может решить вашу проблему, используйте эти «из django.contrib.auth.модели импортируют пользователя», чтобы ввести модель пользователя по умолчанию в эти области

Ответ №1:

Параметр называется AUTH_USER_MODEL [Django-doc], но не AUTH_USER_MODELS потому, что вы можете указать только одну модель, а не несколько:

 AUTH_USER_MODEL = 'leads.User' 

Комментарии:

1. Братан, когда я набираю это, я получаю эту ошибку ОШИБКИ: leads.User.user_ptr: (поля.E301) Поле определяет связь с моделью ‘auth. Пользователь», который был заменен. ПОДСКАЗКА: Обновите отношение, чтобы указать на «настройки». AUTH_USER_MODEL’.

2. @DeveloperLachi: вы уверены, что не унаследовали от User вместо AbstactUser ?

3. пользователь класса(Пользователь,абстрактпользователь): pass

4. из django.db импортируйте модели из django.contrib.auth.модели импортируйте пользователя, абстрактного пользователя

5. @DeveloperLachi: удалите User, деталь, из которой вы больше не можете подклассировать User , так как это означало бы, что активны две модели пользователей.