0

やりたいこと: ブール変数を用意する: has_sidebar を使用して、サイドバーのパーシャルを含める必要があるかどうかを確認します

パーシャルは、私の基本テンプレートであるbase.htmlで呼び出されます

ビュー関数は has_sidebar を変更して、応答がサイドバーでレンダリングされるかどうかを宣言できる必要があります。

#views.py
def my_func1(request):
   has_sidebar = True
   return render_to_response('template1.html', {}, context_instance=RequestContext(request))

def my_func2(request):
   has_sidebar = False
   return render_to_response('template2.html', {}, context_instance=RequestContext(request))

#base.html
{% if has_sidebar %}{%include 'sidebar.html'%}{%endif%}

#template1.html
{% extends 'base.html' %}

#template2.html
{% extends 'base.html' %}

これどうやってするの?前もって感謝します!

: HTML レイアウトでは、基本テンプレートでサイドバーをレンダリングすることしかできません。

4

1 に答える 1

1

レンダリングするbase.htmlを返すときfrom django.shortcuts import render_to_responseは、views.pyの先頭に追加し、両方のmy_funcsに次のように入力します。

return render_to_response('base.html', {'has_sidebar': has_sidebar})
于 2012-07-05T07:03:43.483 に答える