2016-11-28 35 views
1

我不明白爲什麼我的模型的某些領域發生衝突。Django反向訪問器錯誤

我沒有任何外鍵,所以他們爲什麼會發生衝突?

這裏是我的代碼:

from __future__ import unicode_literals 
from django.db import models 
from django.contrib.auth.models import AbstractUser 
import datetime 
import uuid 

# Create your models here 
class Patients(AbstractUser): 
    id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False) 
    first_name = models.CharField(max_length = 255) 
    last_name = models.CharField(max_length = 255) 
    dob = models.DateField(datetime.date.today) 
    gender = models.CharField(max_length = 1) 
    def __unicode__(self): 
     return self.id 

以下是錯誤:

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

有什麼錯誤:文檔Substituting a custom User model

參考

AUTH_USER_MODEL = 'your_app.Patients' 

檢查呢? –

+0

「我沒有任何外鍵,爲什麼他們會衝突?!」定義衝突。向我們顯示您的錯誤日誌和回溯。 –

+0

對不起,我忘了把錯誤,我只是編輯我的文章 –

回答

6

您需要添加AUTH_USER_MODELsetting.py文件。 Django需要知道初始化默認模型。您可以添加如下:https://stackoverflow.com/a/26703434/4575071

+0

我應該在[]中放置什麼,只是我的模型的名稱?所以這個:AUTH_USER_MODEL = [Patient]? –

+1

你的應用名稱是'api'嗎?如果是這樣,那麼你會添加'api.Patients' – ettanany

+0

它確實是api,但現在我得到這個錯誤:ValueError:字段admin.LogEntry.user聲明與'api.patients',但應用'api'不提供模型「患者」。 –