我试图通过以下方式返回当前登录用户的详细信息:
from .serializers import UserSerializer
class UserDetailsView(RetrieveAPIView):
model = User
queryset = User.objects.all()
permission_classes = [permissions.IsAuthenticated]
serializer_class = UserSerializer
def get(self, request, *args, **kwargs):
user = User.objects.get(id=request.user.id)
print(user)
return Response(user)
在 serializers.py 中我使用了
ModelSerializer
class UserSerializer(serializers.ModelSerializer):
password = serializers.CharField(write_only=True)
def create(self, validated_data):
user = UserModel.objects.create(username=validated_data['username'])
user.set_password(validated_data['password'])
user.save()
return user
class Meta:
model = UserModel
fields = ('id', 'username', 'password')
write_only_fields = ('password',)
我收到一个错误
Object of type 'User' is not JSON serializable
.我的用例有什么问题?
最佳答案
关于django - 'User' 类型的 DRF 对象不是 JSON 可序列化的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49591218/