【发布时间】:2020-05-07 08:44:10
【问题描述】:
我的项目是一个简单的博客应用程序,用户可以在其中发布、评论和喜欢帖子。 我使用了 Django 默认用户注册页面,后来我添加了带有自定义用户模型的 Djoser(Django REST 框架的第三方令牌认证),导致崩溃,请查看此
请注意,如果我避免使用 Djoser 的自定义用户,我的项目可以正常工作,即我可以使用令牌和会话身份验证进行注册
FORMS.PY #for Django 的默认注册视图
from django import forms
#from django.contrib.auth.models import User
from .models import User
from django.contrib.auth.forms import UserCreationForm
class UserRegisterForm(UserCreationForm):
email = forms.EmailField()
class Meta:
model = User
fields=['username','email','phone','first_name','last_name','password1','password2']
MODELS.PY # Djoser 自定义用户模型
from django.db import models
from django.contrib.auth.models import AbstractUser
from django.conf import settings
class User(AbstractUser):
email = models.EmailField(verbose_name='email' ,max_length=223,unique=True)
phone=models.CharField(null=True,max_length=11)
REQUIRED_FIELDS = ['username','phone','first_name','last_name']
#USERNAME_FIELD = 'email'
def get_username(self):
return self.email
错误回溯
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'.
userapp.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'.
userapp.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'.
【问题讨论】:
-
能否提供错误回溯?
-
当然,我更新了错误的问题
标签: python django django-rest-framework