Задать вопрос
Ответы пользователя по тегу Django Rest Framework
  • Почему не получается получить токен rest_framework.authtoken на других пользователей, хотя на админа получаю?

    Seletach
    @Seletach Автор вопроса
    Начинающий бекендер
    Ответ на мой вопрос.
    Нужно было сохранять пароль при помощи функции .set_password(), вот такой код в сериалайзере:
    class CustomUserCreateSerializer(ModelSerializer):
    
       class Meta:
            model = CustomUser
            fields = ('email',
                      'username',
                      'first_name',
                      'last_name',
                      'password')
            extra_kwargs = { # указываем обязательные поля для заполнения
                'first_name': {'required': True},
                'last_name': {'required': True},
                'username': {'required': True}
            }
    
        def create(self, validated_data):
            user = CustomUser (
                email=validated_data['email'],
                username=validated_data['username'],
                first_name=validated_data['first_name'],
                last_name=validated_data['last_name']
            )
            user.set_password(password) # хэшируем пароль
            user.save() # сохраняем в БД
            return user

    После этого заработает получение токена. Но есть еще нюанс, если для авторизации в админке в модели используется email, то получение токена тоже нужно настроить по email, иначе будет та же ошибка:
    Невозможно войти с предоставленными учетными данными.
    Ответ написан
    Комментировать