“ CustomPAM.groups”的反向访问器与“ CustomUser.groups”的反向访问器发生冲突

时间:2020-05-06 19:06:38

标签: python django django-models

我正在为学校进行django项目。我们几乎必须构建一个程序,以允许用户回答对等评估。在我的django项目中,我目前在单独的应用程序中有两个模型。一种模型是保存用户信息,另一种模型是保存对等评估。

两个型号都在下面。

mysite / PAM / models.py

from django.db import models
from django.contrib.auth.models import AbstractUser
from datetime import datetime
# Create your models here.

    class CustomPAM(AbstractUser):
        date_created=models.DateField(auto_now_add=True)
        starting_date=models.DateField(default=datetime.now, editable=True)
        deadline_date=models.DateField(null=True, editable=True)
        question1=models.TextField()
        question2=models.TextField()
        question3=models.TextField()
        question4=models.TextField()
        question5=models.TextField()
        question6=models.TextField()
        question7=models.TextField()
        question8=models.TextField()
        question9=models.TextField()
        question10=models.TextField()
        answer1=models.PositiveIntegerField(max_length=1, null=True, editable=True)
        answer2=models.PositiveIntegerField(max_length=1,null=True, editable=True)
        answer3=models.PositiveIntegerField(max_length=1,null=True, editable=True)
        answer4=models.PositiveIntegerField(max_length=1,null=True, editable=True)
        answer5=models.PositiveIntegerField(max_length=1,null=True, editable=True)
        answer6=models.PositiveIntegerField(max_length=1,null=True, editable=True)
        answer7=models.PositiveIntegerField(max_length=1,null=True, editable=True)
        answer8=models.PositiveIntegerField(max_length=1,null=True, editable=True)
        answer9=models.TextField(null=True, editable=True)
        answer10=models.TextField(null=True, editable=True)
        assessmentFrom = models.EmailField(unique=False)
        assessmentFor=models.EmailField(unique=False)

        def __unicode__(self):
            return self.assessmentFrom

和mysite / myusers / models.py

from django.db import models
from django.contrib.auth.models import AbstractUser
from django.conf import settings
from django.db.models.signals import post_save
from django.dispatch import receiver
from rest_framework.authtoken.models import Token

class CustomUser(AbstractUser):
    username=models.CharField(max_length=50, unique=True)
    name=models.CharField(max_length=150)
    eagle_id=models.PositiveIntegerField(unique=True, null=True)
    email=models.EmailField(max_length=150, unique=True)
    password=models.CharField(max_length=80)
    is_student=models.BooleanField(default=False)
    is_professor=models.BooleanField(default=False)
    is_TA=models.BooleanField(default=False)
    team_number=models.PositiveIntegerField(default=0,null=False, editable=True)

    def __str__(self):
        return self.name


#the next four lines are for generating tokens
@receiver(post_save, sender=settings.AUTH_USER_MODEL)
def create_auth_token(sender, instance=None, created=False, **kwargs):
    if created:
        Token.objects.get_or_create(user=instance)

用户模型是我几周前制作的模型,对等评估模型是我现在要包括的模型,但是当我尝试执行命令“ python3 manage.py makemigrations”时,我得到了: >

SystemCheckError: System check identified some issues:

ERRORS:
PAM.CustomPAM.groups: (fields.E304) Reverse accessor for 'CustomPAM.groups' clashes with reverse accessor for 'CustomUser.groups'.
    HINT: Add or change a related_name argument to the definition for 'CustomPAM.groups' or 'CustomUser.groups'.
PAM.CustomPAM.user_permissions: (fields.E304) Reverse accessor for 'CustomPAM.user_permissions' clashes with reverse accessor for 'CustomUser.user_permissions'.
    HINT: Add or change a related_name argument to the definition for 'CustomPAM.user_permissions' or 'CustomUser.user_permissions'.
myusers.CustomUser.groups: (fields.E304) Reverse accessor for 'CustomUser.groups' clashes with reverse accessor for 'CustomPAM.groups'.
    HINT: Add or change a related_name argument to the definition for 'CustomUser.groups' or 'CustomPAM.groups'.
myusers.CustomUser.user_permissions: (fields.E304) Reverse accessor for 'CustomUser.user_permissions' clashes with reverse accessor for 'CustomPAM.user_permissions'.
    HINT: Add or change a related_name argument to the definition for 'CustomUser.user_permissions' or 'CustomPAM.user_permissions'.

WARNINGS:
PAM.CustomPAM.answer1: (fields.W122) 'max_length' is ignored when used with PositiveIntegerField.
    HINT: Remove 'max_length' from field
PAM.CustomPAM.answer2: (fields.W122) 'max_length' is ignored when used with PositiveIntegerField.
    HINT: Remove 'max_length' from field
PAM.CustomPAM.answer3: (fields.W122) 'max_length' is ignored when used with PositiveIntegerField.
    HINT: Remove 'max_length' from field
PAM.CustomPAM.answer4: (fields.W122) 'max_length' is ignored when used with PositiveIntegerField.
    HINT: Remove 'max_length' from field
PAM.CustomPAM.answer5: (fields.W122) 'max_length' is ignored when used with PositiveIntegerField.
    HINT: Remove 'max_length' from field
PAM.CustomPAM.answer6: (fields.W122) 'max_length' is ignored when used with PositiveIntegerField.
    HINT: Remove 'max_length' from field
PAM.CustomPAM.answer7: (fields.W122) 'max_length' is ignored when used with PositiveIntegerField.
    HINT: Remove 'max_length' from field
PAM.CustomPAM.answer8: (fields.W122) 'max_length' is ignored when used with PositiveIntegerField.
    HINT: Remove 'max_length' from field

我试图通过谷歌搜索来解决这个问题,但是对于大多数人来说,在使用ForeignKey()时会出现此问题,但是我没有在模型中使用它们。有什么建议吗?

编辑:我将我的AUTH_USER_MODEL设置为'myusers.CustomUser',所以我认为不是这样。另外,它说我需要在x.groups或x.user_permissions中添加一个related_name参数,但是这些参数从未在我的代码中定义过

0 个答案:

没有答案
相关问题