Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def post(self, request, format=None):
- serializer = UserProfileSerializer(data=request.data)
- if serializer.is_valid(raise_exception=True):
- serializer.save()
- return Response(serializer.data, status=status.HTTP_201_CREATED)
- return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
- class UserProfileSerializer(serializers.ModelSerializer):
- avatar = Base64ImageField()
- official_docs = Base64ImageField()
- class Meta:
- model = UserProfile
- fields = '__all__'
- extra_kwargs = {'password': {'write_only': True},
- }
- def create(self, validated_data):
- hashed_password = make_password(validated_data['password']) # get the hashed password
- user = UserProfile(
- username=validated_data['username'],
- email = validated_data['email'],
- first_name= validated_data['first_name'],
- last_name= validated_data['last_name'],
- phone_number=validated_data['phone_number'],
- avatar=validated_data.pop('avatar'),
- gender=validated_data['gender'],
- city=validated_data['city'],
- description=validated_data['description'],
- date_of_birth=validated_data.pop('date_of_birth'),
- official_docs=validated_data.pop('official_docs'),
- team_name=validated_data['team_name'],
- debit_card_number=validated_data['debit_card_number'],
- favorite_music=validated_data['favorite_music'],
- )
- user.set_password(hashed_password)
- user.save()
- return user
- File "views.py" in post
- 27. serializer.save()
- File ".virtualenvs/Django/lib/python3.6/site-packages/rest_framework/serializers.py" in save
- 214. self.instance = self.create(validated_data)
- File "serializers.py" in create
- 36. date_of_birth=validated_data.pop('date_of_birth'),
- Exception Type: KeyError at /users/
- Exception Value: 'date_of_birth'
Add Comment
Please, Sign In to add comment