すべてのページでログインおよびログアウト機能を管理できるように、django アプリケーションのすべてのテンプレートに現在のユーザー変数を提供する方法はあるのでしょうか。これは非常に一般的な方法であるため、私が見逃した明らかな解決策があるはずです。クラスについては知ってRequestContext
いますが、アプリケーションのすべてのビューにクラスを追加する必要があり、非現実的です。カスタム テンプレート タグでしょうか。
質問する
473 次
3 に答える
3
このためのテンプレート コンテキスト プロセッサがあります: django.core.context_processors.auth
. ドキュメントを確認してください。現在のユーザーとテンプレートの権限にアクセスできます。
于 2013-02-03T13:20:12.777 に答える
0
You can indeed use a custom tag to achieve that.
Note that by default the custom tag has no access to the request
object and therefore to the user data. In order to gain access to the request
you can define the custom tag with the takes_context
attribute and grab the request from the context:
Something like:
@register.inclusion_tag('userdata.html', takes_context = True)
def userdata(context):
request = context['request']
user = request.user
return {'user':user}
于 2013-02-03T13:09:44.013 に答える