16

私はurls.pyにこのパスを持っている:クラスベースの汎用ビューでRequestContextにアクセスする方法は?

archive_index_dict = { 
    'queryset': News.objects.filter(show=True), 
    'date_field': 'date', 
    'template_object_name': 'object_list', 
} 

... 

url(r'^$', 'django.views.generic.date_based.archive_index', 
     archive_index_dict, name='news_archive_index' 
    ), 

は、今私は(これはメニュースタイリングのためである)ページが最新のものである場合には、テンプレートに検出します。 {{ request.path }}でも{{ request.get_full_path }}もテンプレートでは機能しません。

代わりに何を使用しますか?私はTEMPLATE_CONTEXT_PROCESSORSdjango.core.context_processors.requestを追加する必要がありましたテンプレートでrequestが利用可能に取得するには

SOLUTION

。これはデフォルトでは設定されていません(django 1.3以降)。

+0

あなたは 'django ....要求'コンテキストプロセッサを設定していますか?ほとんどすべてのCBVはデフォルトで 'RequestContext'を使用します。もちろん、 – ilvar

+0

OMGです。 :)ヒントをありがとう、 ''django.core.context_processors.request''を設定に追加しました。そして、' request'がテンプレートで利用可能になりました。ところで、あなたは答えとしてあなたのコメントを投稿することができ、私はそれに投票するだろう。 –

答えて

20

'django.core.context_processors.request'コンテキストプロセッサを設定していますか?ほとんどすべてのCBVはデフォルトでRequestContextを使用します

関連する問題