Как вернуть json web-токен после создания пользователя в djoser с помощью dango rest framework

Это мой файл сериализатора для обновления стандартного UserCreateSerializer из djoser.

Я видел этот вопрос но ничего не понял, пожалуйста, помогите мне реализовать это.

Я нашел решение.

from djoser.serializers import UserCreateSerializer as BaseUserCreateSerializer, \
UserSerializer as BaseUserSerializer
from rest_framework_simplejwt.tokens import RefreshToken
from rest_framework import serializers


class UserCreateSerializer(BaseUserCreateSerializer):
    token = serializers.SerializerMethodField(method_name='get_token')
    class Meta(BaseUserCreateSerializer.Meta):
        fields = ['id', 'username', 'password', 'email', 'first_name', 'last_name', 'token']

    def get_token(self, user):
        refresh = RefreshToken.for_user(user)
        return {
            'refresh': str(refresh),
            'access': str(refresh.access_token),
        }
Вернуться на верх