Django模板 – 具有灵活名称的可重用片段
发布时间:2020-12-20 11:22:24 所属栏目:Python 来源:网络整理
导读:我有一个可重用的 HTML片段,用于列出项目.所以要在视图中列出项目,我只是这样做: variables = RequestContext(request,{ 'items': items,}return render_to_response('template_in_question',variables) 这个片段是: {% for item in items %} pItem: {{ite
我有一个可重用的
HTML片段,用于列出项目.所以要在视图中列出项目,我只是这样做:
variables = RequestContext(request,{ 'items': items,} return render_to_response('template_in_question',variables) 这个片段是: {% for item in items %} <p>Item: {{item.name}} </p> {% endfor %} 到现在为止还挺好.但是,有些视图我想要使用相同的可重用片段两次.例如,如果我想列出最畅销商品和最新商品,我需要创建该可重复使用片段的两个副本: 视图将是这样的: variables = RequestContext(request,{ 'most_sold_items': most_sold_items,'latest_items': latest_items } 并且在HTML中需要有两个可重用的HTML模板: {% for item in most_sold_items %} <p>Item: {{item.name}}</p> {% endfor %} 还有第二个 {% for item in latest_items %} <p>Item: {{item.name}}</p> {% endfor %} 所以我的问题是:如何在同一视图中使用两个或多个项目列表,并使用通用的HTML模板?例如,在上面的视图中传递“most_sold_items”和“latest_items”并以某种方式仅使用一个HTML模板分别列出每个? 解决方法
你可以使用include标签来完成它.基本上,你最终得到:
<h1>Most sold items</h1> {% include "items.html" with items=most_sold_items only %} <h1>Latest items</h1> {% include "items.html" with items=latest_items only %} (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |