私は見ています このウェブサイト しかしそれがうまくいかないのでこれを行う方法を理解することができないようです。現在のサイトユーザーがログインしている(認証されている)かどうかを確認する必要があります。
request.user.is_authenticated
ユーザーがログインしていることを確認したにもかかわらず、それだけで返されます。
>
私は他のリクエストをすることができます(上記のURLの最初のセクションから):
request.user.is_active
これは成功した応答を返します。
Django 1.10以降のアップデート:is_authenticated
はDjango 1.10の属性になりました。このメソッドは下位互換性のためにまだ存在していますが、Django 2.0では削除される予定です。
Django 1.9以上の場合:
is_authenticated
は関数です。あなたはそれを好きに呼ぶべきです
if request.user.is_authenticated():
# do something if the user is authenticated
Peter Rowellが指摘したように、あなたをつまずかせているのは、デフォルトのDjangoテンプレート言語では、関数を呼び出すための括弧についていけないことです。それで、あなたはテンプレートコードでこのような何かを見たかもしれません:
{% if user.is_authenticated %}
しかし、Pythonコードでは、これは確かにUser
クラスのメソッドです。
次のブロックは動作するはずです。
{% if user.is_authenticated %}
<p>Welcome {{ user.username }} !!!</p>
{% endif %}
あなたの見解では:
{% if user.is_authenticated %}
<p>{{ user }}</p>
{% endif %}
あなたのコントローラ関数にデコレータを追加します。
from Django.contrib.auth.decorators import login_required
@login_required
def privateFunction(request):