1

そのため、ログインしているユーザーが 2 つのタブを開いていると言い、一方のタブではサイトからログアウトするが、もう一方のタブではまだ「ログイン」しているため、クリックしようとするケースを検討しようとしています。 POSTデータを送信するボタン、私のビューの私の機能は、ユーザーが認証されていないことを検出し、ログインページにリダイレクトする必要があります。しかし、私はこれをまったく機能させることができないようです。私は数多くのテストを行い、条件が正しく検証されていることを知っていますが、リダイレクトは発生しません。以下は、フォームのコードと私の見解のコードです。

<form method="POST" action="">
{% csrf_token %}
# an input button
</form>


if not request.user.is_authenticated():
    return HttpResponseRedirect(reverse('django.contrib.auth.views.login'))

#otherwise I check if it was request.POST etc and handle a normal request

設定ファイルで指定されたログイン URL などを使用して、URL をハードコーディングしようとしましたが、どれも何もしないようです。空の action="" 部分が原因だと思っていますが、それが理由ではないと思います。

4

1 に答える 1

2

login_requiredデコレーターにとって完璧なタスクのように思えます: https://docs.djangoproject.com/en/1.5/topics/auth/default/#the-login-required-decorator

于 2013-06-23T19:11:41.067 に答える