fix for user registration

This commit is contained in:
Sam
2021-02-01 12:56:28 +00:00
parent d94eb9882c
commit b8cd663fee
5 changed files with 80 additions and 15 deletions

View File

@@ -15,7 +15,32 @@ from back_latienda.permissions import CustomUserPermissions
class CustomUserViewSet(viewsets.ModelViewSet):
model = models.CustomUser
serializer_class = serializers.CustomUserSerializer
serializer_class = serializers.CustomUserReadSerializer
write_serializer_class =serializers.CustomUserWriteSerializer
model_name = 'custom_user'
queryset = models.CustomUser.objects.all()
permission_classes = [CustomUserPermissions,]
def create(self, request):
"""
Create Instance
"""
try:
serializer = self.write_serializer_class(
data=request.data,
)
if serializer.is_valid():
# save model instance data
password = serializer.validated_data.pop('password')
instance = self.model(**serializer.validated_data)
instance.set_password(password)
instance.save()
return Response(self.serializer_class(
instance, many=False, context={'request': request}).data,
status=status.HTTP_201_CREATED)
else:
return Response(
serializer.errors, status=status.HTTP_406_NOT_ACCEPTABLE)
except Exception as e:
return Response(str(e), status=status.HTTP_500_INTERNAL_SERVER_ERROR)