1

Djangoで問題が発生しています...

ログイン後、一部のページの認証セッションが失われます。「accounts/login /」、「accounts / logout /」、「accounts / register /」にアクセスすると、セッションは常にそこにありますが、別のページにアクセスすると、ユーザー変数にアクセスできません。

すべてのページに同じ「base.html」を使用していて、内部に「if user.is_authenticated」というロジックがあるため、これは奇妙です。URLに「アカウント」があるページにアクセスしたときに、この条件が当てはまると言ったのです。

設定ファイルで、これら3つのミドルウェアを有効にしました。

MIDDLEWARE_CLASSES =('django.middleware.common.CommonMiddleware'、'django.contrib.sessions.middleware.SessionMiddleware'、'django.contrib.auth.middleware.AuthenticationMiddleware'、)

ありがとう

4

1 に答える 1

4

ここでの推測: ユーザーにアクセスできないビューのコンテキストに RequestContext を含めていますか?

つまり、ジェネリック ビューを呼び出すと RequestContext が自動的に含まれますが、使用している場合はrender_to_response()次のように呼び出す必要があります。

return render_to_response('template_name',
    { your context dict },
    context_instance=RequestContext(request))
于 2009-09-07T23:50:38.980 に答える