Esempio n. 1
0
    def register(self, request):
        # Check for username exists
        serializer = RegisterSerializer(data=request.data)
        if serializer.is_valid():
            username = serializer.data.get('username')
            email = serializer.data.get('email')
            password = serializer.data.get('password')
            first_name = serializer.data.get('first_name')
            last_name = serializer.data.get('last_name')
        else:
            return Response({'detail': "Invalid Form Data"}, status=400)

        if username in Student.objects.all().values_list(
                'username') or email in User.objects.all().values_list(
                    'email'):
            return Response(
                {'detail': "User with that username already exists"},
                status=400)

        user = Student()
        user.username = username
        user.email = email
        user.set_password(password)
        user.first_name = first_name
        user.last_name = last_name
        user.is_active = False
        user.save()
        return Response(
            {
                'detail':
                "Registered Successfully, please contact Admin for Approval"
            },
            status=201)