django 사용자 로그인 및 검증
4131 단어 django
{% load staticfiles %}
Signin Template for Bootstrap
2, 한 사용자 로그인
보기에서 사용자를 로그인하려면 login () 을 사용하십시오.HttpRequest 객체와 User 객체를 모두 수락합니다.login()은 Django의 세션 프레임워크를 사용하여 사용자의 ID를 세션에 저장합니다.
익명 세션에 설정된 모든 데이터는 사용자가 로그인한 세션에서 기억됩니다.
def signin(request):
username = request.POST.get('username')
password = request.POST.get('password')
log = log_config()
log.debug(request.POST)
log.debug("username:%s password:%s" % (username,password))
user = authenticate(username=username,password=password)
if user is not None:
if user.is_active:
login(request,user)
return redirect('/dashboard/')
else:
return HttpResponse("login.html")
else:
t = loader.get_template("login.html")
return HttpResponse(t.render())
먼저 authenticate()를 호출합니다.
사용자가 수동으로 로그인할 때login () 을 호출하기 전에authenticate () 를 통해 사용자를 인증해야 합니다.authenticate () 는 User에 어떤 인증 백그라운드가 이 사용자를 성공적으로 인증했는지 속성을 설정하고 이 정보는 뒤에 로그인하는 과정에서 필요합니다.데이터베이스에서 직접 꺼내는 사용자에게 로그인하려고 하면 오류가 발생합니다.3. 한 사용자 로그아웃
하나를 올리려면django를 통과했습니다.contrib.auth.login () 로그인한 사용자는 보기에서django를 사용할 수 있습니다.contrib.auth.logout().HttpRequest 객체를 수신하고 값을 반환하지 않습니다.
def logout_view(request):
logout(request)
t = loader.get_template("login.html")
return HttpResponse(t.render())
4. 로그인한 사용자만 접근 가능
1) is 사용authenticated()
페이지 접근을 제한하는 간단하고 원시적인 방법은 Request를 검사하는 것입니다.user.is_authenticated() 및 로그인 페이지로 리디렉션:
def dashboard(request):
if not request.user.is_authenticated():
return redirect('/index/')
else:
t = loader.get_template("dashboard.html")
return HttpResponse(t.render())
2)login 사용required 장식기
@login_required
def dashboard(request):
t = loader.get_template("dashboard.html")
return HttpResponse(t.render())
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Django의 질문 및 답변 웹사이트환영 친구, 이것은 우리의 새로운 블로그입니다. 이 블로그에서는 , 과 같은 Question-n-Answer 웹사이트를 만들고 있습니다. 이 웹사이트는 회원가입 및 로그인이 가능합니다. 로그인 후 사용자는 사용자의 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.