1
누구든지 장고 인증 시스템을 사용자 정의하는 것에 대해 더 많은 정보를 제공 할 수 있습니까? 글쎄, 난 내가 식별자로 이메일을 사용하는 사용자 정의 사용자 생성 :사용자 인증 사용자 정의
USERNAME_FIELD = 'email'
을 나는 사용자 지정 인증 백엔드를 만들어, 나는 설정 파일에서이 새에 인증 백엔드를 변경 :
class Custom_Authentication(ModelBackend):
def authenticate(self, email=None, password=None):
try:
user = self.user_class.objects.get(email=email)
if user.check_password(password):
return user
except self.user_class.DoesNotExist:
return None
def get_user(self, user_id):
try:
return self.user_class.objects.get(pk=user_id)
except self.user_class.DoesNotExist:
return None
@property
def user_class(self):
if not hasattr(self, '_user_class'):
self._user_class = get_model(*settings.AUTH_USER_MODEL.split('.', 2))
if not self._user_class:
raise ImproperlyConfigured('Could not get custom user model')
return self._user_class
from django.contrib import auth
def auth_view(request):
email = request.POST.get('email', '')
password = request.POST.get('password', '')
user = auth.authenticate(username=email, password=password)
if user is not None:
auth.login(request, user)
return HttpResponseRedirect('/loggedin/')
else:
return HttpResponseRedirect('/invalid/')
나는이 시도하고 내가 USI를 생성 한 사용자를 인식하지 못하는 것 같다
하지만 지금은 자신의 이메일을 사용하여 사용자 정의 사용자를 인증하는 방법을 모른다는, 내가 사용합니까 관리 인터페이스. 내가 바꿀 필요가있는 다른 것들이 있습니까?
확인, 감사합니다, 나는 그것을 시도 줄거야, 그리고 난 당신이 완벽하게 작동 – user1150231
를 게시하겠습니다 다시 한번 감사 – user1150231