Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/362.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在页面的特定位置呈现Django模板块_Python_Html_Django_Django Templates_Django Oscar - Fatal编程技术网

Python 在页面的特定位置呈现Django模板块

Python 在页面的特定位置呈现Django模板块,python,html,django,django-templates,django-oscar,Python,Html,Django,Django Templates,Django Oscar,我试图在Django模板语言中实现一些东西,而不知道不使用JS或类似的东西是否可行 我有来自Django Oscar的以下代码,它在主页上呈现3个促销块: {# Render promotions #} <div id="promotions"> {% for promotion in promotions_page %} {% render_promotion promotion %} {% endfor %} </div> 这三个区块分

我试图在Django模板语言中实现一些东西,而不知道不使用JS或类似的东西是否可行

我有来自Django Oscar的以下代码,它在主页上呈现3个促销块:

{# Render promotions #}
<div id="promotions">
    {% for promotion in promotions_page %}
       {% render_promotion promotion %}
    {% endfor %}
</div>
这三个区块分别为单一项目、产品和新到货。上面的代码出现在layout.html中,它主要负责呈现主页的整个布局

问题是,只要Django遇到这段代码,它就会一个接一个地呈现那里的所有促销活动。一、 但是,我想选择我在页面上放置它们的位置。更重要的是,我不相信我在如何呈现它们方面有多大的灵活性,我不想改变奥斯卡电子商务和呈现代码,除非绝对必要

由于我可以访问单个项目、产品和新来者促销的单个模板,因此我尝试在那里创建DTL块,然后在layout.html的适当位置调用这些块。然而,这是行不通的


什么是实现我想要做的事情的最合适、最有效的方法?

Django模板系统提供了一些功能,让您可以添加自定义模板来代替应用程序附带的模板。你不需要为此给django oscar打补丁

从这里开始:

希望我能补充一些启示