Saiful Azam
Saiful Azam

Reputation: 107

Django 'NoneType' object has no attribute '_meta'

any solution for this error

AttributeError at /api/register/ 'NoneType' object has no attribute '_meta' Request Method: POST Request URL: http://localhost:8000/api/register/ Django Version: 3.1.2 Python Executable: /opt/anaconda3/envs/catermahalENV/bin/python Python Version: 3.8.8 Python Path: ['/Users/saifulazam/Desktop/Clients/Catermahal/catermahal', '/opt/anaconda3/envs/catermahalENV/lib/python38.zip', '/opt/anaconda3/envs/catermahalENV/lib/python3.8', '/opt/anaconda3/envs/catermahalENV/lib/python3.8/lib-dynload', '/opt/anaconda3/envs/catermahalENV/lib/python3.8/site-packages'] Server time: Thu, 13 May 2021 05:57:19 +0000

serializers.py

class RegisterSerializer(serializers.ModelSerializer):
    class Meta:
        model = User
        fields = ('id', 'name', 'email', 'password')
        extra_kwargs = {'password': {'write_only': True}}

    def create(self, validated_data):
        user = User.objects.create_user(
            validated_data['name'], validated_data['email'], validated_data['password'])

        return user

views.py

class RegisterAPI(generics.GenericAPIView):
    serializer_class = RegisterSerializer

    def post(self, request, *args, **kwargs):
        serializer = self.get_serializer(data=request.data)
        serializer.is_valid(raise_exception=True)
        user = serializer.save()

        return Response({
            "user": UserSerializer(user, context=self.get_serializer_context()).data,
            'token': AuthToken.objects.create(user)[1]
        })

Upvotes: 0

Views: 483

Answers (1)

Tom Wojcik
Tom Wojcik

Reputation: 6179

You show POST handler in your view and its serializer but your error message says GET.

Upvotes: 0

Related Questions