Django 用不同的文本呈现相同的模板?
我有大约4-5个Django项目的模板。我想在每个模板上使用大约10页(10组不同的内容/文本) 我一直在使用上下文来填充每页呈现时的相关内容 但是,我不确定是否有任何潜在的性能损失,因为内容相当大。是否有一种简洁高效的方法来呈现一个模板,其中包含与上一页上单击的链接相关的内容 我目前正在做的事情: index.htmlDjango 用不同的文本呈现相同的模板?,django,Django,我有大约4-5个Django项目的模板。我想在每个模板上使用大约10页(10组不同的内容/文本) 我一直在使用上下文来填充每页呈现时的相关内容 但是,我不确定是否有任何潜在的性能损失,因为内容相当大。是否有一种简洁高效的方法来呈现一个模板,其中包含与上一页上单击的链接相关的内容 我目前正在做的事情: index.html <div class='well well-sm well-md well-lg'> <h1> {{variable1}} </h1>
<div class='well well-sm well-md well-lg'>
<h1> {{variable1}} </h1>
</div>
<div class='well well-sm well-md well-lg'>
{% if page_type == 1 %}
{%include "page_type1.html"%}
{%else%}
{%include "page_type2.html"%}
{%endif
</div>
基本上,我想知道是否有一种不必使用上下文就能完成上述任务的方法。还是我必须为每个页面创建一个模板 检查django
在url中:
或者,如果您没有页面id/名称系统,您可以使用:
def page(request):
url = request.path
value = dict[url]
render (...)
您需要分两步求解
def page(request):
if previous_page == "some page 1"
page_type = 1
elif previous_page == "some page 2"
page_type = 2
return render(request, 'index/base.html', {'page_type': page_type})
<div class='well well-sm well-md well-lg'>
<h1> {{variable1}} </h1>
</div>
<div class='well well-sm well-md well-lg'>
{% if page_type == 1 %}
{%include "page_type1.html"%}
{%else%}
{%include "page_type2.html"%}
{%endif
</div>
{%如果页面类型==1%}
{%include“page_type1.html”%}
{%else%}
{%include“page_type2.html”%}
{%endif
你需要为呈现所需的html编写两个模板
page_type1.html
和page_type2.html
。你看过了吗?@JensAstrup-hay,是的,我一直在尝试使用它,但我无法根据上一页单击的链接计算出如何扩展块。我认为这可能是某种条件语句,但它做到了似乎不起作用。我有一个url名称系统,但为了保持呈现不同内容的'index/base.html',dict的文本越来越长。我正在试图找到一种方法来做到这一点,而不必使用上下文dict。嗯,您应该创建模型并将它们保存在数据库中,这不会导致不必要的开销吗每个页面请求都要访问数据库?特别是一些文本。我很懒,所以我不想创建很多模板,但我相信这样做可能会比每次单击db往返更有效。
<div class='well well-sm well-md well-lg'>
{% if page_type == 1 %}
{%include "page_type1.html"%}
{%else%}
{%include "page_type2.html"%}
{%endif
</div>