1

テンプレートに常に「リクエスト」があることを確認するにはどうすればよいですか?たとえば、テンプレートで次のように呼び出したい場合:

request.get_full_path

私は常にこのように(ビュー内の)コンテキストにそれを含める必要があります...

context = {'form': form,'request':request}
return render_to_response('contacts/group.html', context, context_instance=RequestContext(request))

私のすべてのビューに対して同時にこれを行うためのよりエレガントな方法があるはずですか?

4

1 に答える 1

3

私はここで同様の質問に答えました:djangoテンプレートのrequest.path(答えがまだ受け入れられていないため、重複としてマークすることはできません)。

基本的に、 settings.pyでTEMPLATE_CONTEXT_PROCESSORS変数を定義する必要があります。

TEMPLATE_CONTEXT_PROCESSORS = (
    // DEFAULT
    "django.contrib.auth.context_processors.auth",
    "django.core.context_processors.debug",
    "django.core.context_processors.i18n",
    "django.core.context_processors.media",
    "django.core.context_processors.static",
    "django.core.context_processors.tz",
    "django.contrib.messages.context_processors.messages",
    // for request
    "django.core.context_processors.request"
)

requestこれで、すべてのテンプレートで使用できるようになります。

于 2013-03-15T16:26:25.843 に答える