def index(request):
the_user = request.user
Django에서 실제 사용자인지 아닌지 어떻게 알 수 있습니까? 나는 시도했다 :
if the_user:
그러나 “AnonymousUser”는 아무도 로그인하지 않아도 존재합니다. 따라서 항상 true를 반환하고 작동하지 않습니다.
답변
request.user.is_anonymous
반품 여부를 확인할 수 있습니다 True
.
답변
대안
if user.is_anonymous():
# user is anon user
사용자 개체의 ID가 무엇인지 테스트하는 것입니다.
if user.id == None:
# user is anon user
else:
# user is a real user
참조 https://docs.djangoproject.com/en/dev/ref/contrib/auth/#anonymous-users를
답변
여기에서 엄청나게 파고 드는 것을 알고 있지만 Google 검색을 통해이 페이지로 이동했습니다.
뷰 정의에 사용자 로그인이 필요한 경우 @login_required 데코레이터를 구현할 수 있습니다.
from django.contrib.auth.decorators import login_required
@login_required
def my_view(request):
…
답변
login_redirect_url이 전송 된 페이지에 있다는 점을 제외하면 비슷한 문제가 발생했습니다. 나는 템플릿을 넣어야했다 :
{% if user.is_authenticated %}
Welcome Back, {{ username }}
{% endif %}
답변
