論理的な選択肢は何ですか:
{% if request.user.is_active %}
render_to_response
ビューがのディクショナリで返されない場合request
、テンプレートは正しく機能しません。
ですから、どんなアイデアでも大歓迎です。
//編集済み
私の動機は、インストールされたアプリからビューを操作するとき、それらを変更する機会がないということです。
論理的な選択肢は何ですか:
{% if request.user.is_active %}
render_to_response
ビューがのディクショナリで返されない場合request
、テンプレートは正しく機能しません。
ですから、どんなアイデアでも大歓迎です。
//編集済み
私の動機は、インストールされたアプリからビューを操作するとき、それらを変更する機会がないということです。
に追加django.contrib.auth.context_processors.auth
しTEMPLATE_CONTEXT_PROCESSORS
ますsettings.py
。
これuser
で、すべてのテンプレートに変数があります。したがって、これを使用できます。
{% if user.is_active %}
詳細については、ドキュメントを参照してください:設定のテンプレートコンテキストプロセッサ、認証コンテキストプロセッサ。
ビュー.py:
def foo_view(request):
...
is_active = request.user.is_active
return render_to_response('template.html', {'is_active':is_active})
または context_processor:
def is_user_active(request):
return {'is_active': request.user.is_active}
またはミドルウェア:
class IsUserActive:
def process_template_response(self, request, response):
response.context['is_active'] = request.user.is_active
template.html:
{% if is_active %}
...
{% endif %}
しかし、正直なところ、render_to_response があなたを満足させない理由がわかりません。
...
return render_to_response('template.html',
context_instance=RequestContext(request))