Django Rest框架上的POST请求错误(auth_user.username)

Django Rest框架上的POST请求错误(auth_user.username),django,django-rest-framework,django-users,serialization,Django,Django Rest Framework,Django Users,Serialization,我试图通过POST创建一个新用户(django用户) 序列化程序.py from rest_framework import serializers from .models import * from django.contrib.auth.models import User class UsuarioSerializer(serializers.ModelSerializer): class Meta: model = User fields =

我试图通过POST创建一个新用户(django用户)

序列化程序.py

from rest_framework import serializers
from .models import *
from django.contrib.auth.models import User

class UsuarioSerializer(serializers.ModelSerializer):
    class Meta:
        model = User
        fields = ('email',
                  'password')
views.py:

class Registrar(mixins.CreateModelMixin, viewsets.GenericViewSet):
    serializer_class = UsuarioSerializer
URL.py:

from django.urls import path, include
from . import views
from rest_framework import routers


router = routers.DefaultRouter()
router.register('usuarios', views.UsuarioViewSet)
router.register('tecnicos', views.TecnicoViewSet)
router.register('pedidos', views.PedidoViewSet)
router.register('mispedidos', views.PedidoMiUsuarioSet)
router.register('registrar', views.Registrar, base_name = 'registro')


urlpatterns = [
    path('', include(router.urls))
]
当我发布帖子时,我会出现以下错误: 唯一约束失败:auth_user.username

如果我将模型用户更改为Usuario,则此操作有效

Models.py:

class Usuario(models.Model):
    email = models.EmailField(max_length=70, blank=True, null=True, unique=True)
    password = models.TextField()

    def __str__(self):
        return self.email 

但是我需要使用django的用户模型,用户模型中的用户名字段是必需的。

这就是为什么必须在创建操作中使用此字段

默认情况下,电子邮件地址不是必需的


它发生在Django create用户上,通过唯一的用户用户名。

请稍候,不要通过API访问密码(即使这些密码是散列的)!!失败的原因是,正如错误所说,您已经有了一个
用户
,其
用户名