現在、render_to_response は html を保持する HttpResponse オブジェクトを返しますが、テンプレート、辞書、およびビューからの要求から HTML のみをレンダリングする方法はありますか?
注:これを行う理由は、djangoビューを互いにネストし、テンプレートインクルードを介して含めるのではなく、この方法で値を含めることができるようにするためです
すなわち:
menu.html:
<div>menu {{ text }}</div>
これ欲しい:
template.html:
<div >...{{ menu }} </div>
見る
def menu(request, ...):
# do menu variable calculations here
# returned html string rendered from template, request, kwargs, and variables
def base(request, ...):
menu = menu(request, ...) # rendered html for menu values
render_to_response("template.html", context={"menu":menu})
それよりも:
template.html
<div>{% include menu.html %}</div>
見る
def base(request, ...):
# calculate menu variable values here
render_to_response("template.html", context=dictionary_of_menu_items)