何が間違っていますか?私はちょうどユーザーのユーザー名がほしい。私はログに記録されているので、なぜ動作していないのかわかりません。django.contrib.authを使用してテンプレートでユーザーを取得できません
views.py
from django.contrib.auth.models import User
def check_user(request):
data = dict()
user = User.objects.all()
data['user'] = user
return render(request, 'check_user.html', data)
urls.py
url(r'^check_user/$', views.check_user, name='check_user'),
check_user.html
{{ request.user.is_authenticated }}
{% if user.is_authenticated %}
<p>Welcome, {{ user.username }}. Thanks for logging in.</p>
{% else %}
<p>Welcome, new user. Please log in.</p>
{% endif %}
と私は、この取得しています:
CallableBool(True)
Welcome, new user. Please log in.
代わりに{%user.is_authenticated%があれば}の{request.user.is_authenticated%の場合%}私はこの取得しています::210
私が取得する必要があります
Welcome, admin. Thanks for logging in.
私が使用している場合
Welcome, . Thanks for logging in.
だから私はUser.objectsを渡す必要はありません。テンプレート内に自動的に実装されているので、all()は役に立ちますか? –
すべてのユーザーのリストが必要な場合は、必要です。しかし、ここであなたはページをリクエストした現在のユーザーのユーザー名を尋ねますか?右 ? – Wilfried
はい、ありがとうございます。 –