Python 重写jwt_响应_有效负载_处理程序以发回序列化用户时出错
我添加了对UserSerializer的调用 这是我的序列化程序Python 重写jwt_响应_有效负载_处理程序以发回序列化用户时出错,python,django,django-rest-framework,django-rest-framework-jwt,Python,Django,Django Rest Framework,Django Rest Framework Jwt,我添加了对UserSerializer的调用 这是我的序列化程序 class UserSerializer(serializers.ModelSerializer): class Meta: model=user fields="__all__" 我的定制模型 from django.db import models class user(models.Model): username=models.CharField(max_length=1
class UserSerializer(serializers.ModelSerializer):
class Meta:
model=user
fields="__all__"
我的定制模型
from django.db import models
class user(models.Model):
username=models.CharField(max_length=150)
firstname=models.CharField(max_length=20)
lastname=models.CharField(max_length=20)
email=models.CharField(max_length=40)
password=models.CharField(max_length=40)
type=models.CharField(max_length=10)
def __str__(self):
return self.firstname
我添加了一个自定义JWT处理程序
from login.serializers import UserSerializer
def my_jwt_response_handler(token, user=None, request=None):
return {
'token': token,
'user': UserSerializer(user, context={'request':request}).data
}
在settings.py中,我有
JWT_AUTH = {
'JWT_RESPONSE_PAYLOAD_HANDLER': 'login.utils.my_jwt_response_handler'
}
当我尝试登录时,是否出现此错误
AttributeError: Got AttributeError when attempting to get a value for field `firstname` on serializer `UserSerializer`.
The serializer field might be named incorrectly and not match any attribute or key on the `User` instance.
Original exception text was: 'User' object has no attribute 'firstname'.
如有任何帮助,将不胜感激您已经迁移了数据库吗
python manage.py makemigrations
和python manage.py migrate
我还建议您看看这篇博客文章,它展示了如何在Django中使用自定义用户模型
您的问题解决了吗?如果解决了,您的解决方案是什么?还没有解决方案!