Я пытаюсь создать пользовательский API создания и опубликовать API создания, запрос 'Get' работает нормально, но запрос публикации всегда пуст. Если есть что-то, что я пропустил или нужно добавить к представлениям, потому что запрос get отлично работает для почтового приложения. Какие могут быть возможные ошибки.
Serializer.py
from rest_framework import serializers
from .models import User
class RegisterSerializer(serializers.ModelSerializer):
password2 = serializers.CharField(
style={'input_type': 'password'}, write_only=True)
class Meta:
model = User
fields = ['username', 'email',
'date_of_birth', 'password', 'password2']
extra_kwargs = {'password': {'write_only': True}}
def save(self):
print("saved")
user = User(email=self.validated_data['email'],
username=self.validated_data['username'],
date_of_birth=self.validated_data['date_of_birth']
)
password = self.validated_data['password']
password2 = self.validated_data['password2']
if password != password2:
raise serializers.ValidationError(
{'password': 'Passwords must match.'})
user.set_password(password)
user.save()
return user
Ниже представлен views.py
from rest_framework import status
from rest_framework.response import Response
from rest_framework.decorators import api_view
from .models import User
from .serializers import RegisterSerializer
from rest_framework.authtoken.models import Token
from rest_framework.parsers import JSONParser
@api_view(['POST', ])
def registration_view(request):
if request.method == 'POST':
serializer = RegisterSerializer(data=request.data)
data = {}
if serializer.is_valid():
print("Hello")
user = serializer.save()
data['response'] = 'Successfuly registered a new User'
data['date_of_birth'] = user.date_of_birth
data['username'] = user.username
data['email'] = user.email
token = Token.objects.get(user=user)
data['token'] = token
return Response(data)
else:
return Response(serializer.errors)
Независимо от запроса на публикацию, я всегда получить сообщение об ошибке, указав, что это поле обязательно для заполнения,
Вот ошибка - скриншот
Кто-нибудь может мне помочь, пожалуйста, Спасибо