사용자 정의 사용자가 django-rest_framework_simple-jwt를 사용하여 사용자를 인증하려고 할 때 빠진 이야기
오류가 나왔다! !
DjangoREST Framework의 프로젝트에 djoser를 도입하고, api/auth/jwt/create에 대해 POST해도 토큰이 발행되지 않고, 무엇인가라고 생각하고 일단 콘솔에 액세스해 액티브한 유저로 POST했는데, 이하와 같이 오류가 발생했습니다.
"detail": "No active account found with the given credentials"
주어진 정보에서 활성 사용자를 찾을 수 없습니다! 그래서 곧 오류 문으로 구그를 보면 다음 기사가
Django drf simple-jwt authentication“detail”: “No active account found with the given credentials”
아무래도 패스워드가 DB에 들어가기 전에 해시화되어 있지 않고, 시리얼라이저에 이하를 추가하면 제대로 움직여 주는 모습.
그래서 이 기사 안에 있는 함수를 추가.
serializers.pyfrom django.contrib.auth.hashers import make_password #追加
from djoser.serializers import UserSerializer
from .models import User
class CustomUserSerializer(UserSerializer):
"""
ユーザー情報獲得のためのシリアライザー
"""
class Meta:
model = User
fields = '__all__'
# 追加
def validate_password(self,value:str) ->str:
"""
ハッシュ値に変換する
"""
return make_password(value)
그러면 ...
무사한 토큰이 발행되었습니다.
빠졌을 때는 깜짝 놀랐습니다만, 정말 꽤 좋았습니다.
Reference
이 문제에 관하여(사용자 정의 사용자가 django-rest_framework_simple-jwt를 사용하여 사용자를 인증하려고 할 때 빠진 이야기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/KueharX/items/bb105048678e460d59a4
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
"detail": "No active account found with the given credentials"
from django.contrib.auth.hashers import make_password #追加
from djoser.serializers import UserSerializer
from .models import User
class CustomUserSerializer(UserSerializer):
"""
ユーザー情報獲得のためのシリアライザー
"""
class Meta:
model = User
fields = '__all__'
# 追加
def validate_password(self,value:str) ->str:
"""
ハッシュ値に変換する
"""
return make_password(value)
Reference
이 문제에 관하여(사용자 정의 사용자가 django-rest_framework_simple-jwt를 사용하여 사용자를 인증하려고 할 때 빠진 이야기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/KueharX/items/bb105048678e460d59a4텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)