Python Django:我应该使用include或extends标记来创建FAQ吗?

Python Django:我应该使用include或extends标记来创建FAQ吗?,python,django,django-templates,Python,Django,Django Templates,我正在我的网站上创建一个常见问题解答。这是一个包含大量Q和a的页面。每个Q/a块可以是复杂的HTML(而不是简单的文本) 我希望避免对Q和A结构重复相同的HTML代码。 这就是为什么我想创建一个q-and-a.html,并尽可能多地包含该文件,比如: <div class="my-faq"> {% include q-and-a.html with question="What is life?" answer="It's complicated, son." %}

我正在我的网站上创建一个常见问题解答。这是一个包含大量Q和a的页面。每个Q/a块可以是复杂的HTML(而不是简单的文本)

我希望避免对Q和A结构重复相同的HTML代码。 这就是为什么我想创建一个q-and-a.html,并尽可能多地包含该文件,比如:

<div class="my-faq">
    {% include q-and-a.html with question="What is life?" answer="It's complicated, son." %}
    {% include q-and-a.html with question="Ping?" answer="Pong!" %}
    <!-- Lots of other question/answer here -->
</div>

{%包括q-and-a.html和问句=“生活是什么?”回答=“这很复杂,儿子。”%}
{%在q-and-a.html中加上question=“Ping?”answer=“Pong!”%}
但在这种情况下,我需要传递HTML,而不是文本。好的,
{%include…with%}
标记不允许我将HTML传输到包含的文件中。即使有可能,也很难维持

然后,我想,
{%extends%}
标记可能是考虑到我的需要的最佳选择。但事实上,如果我只有一个问题,这就行了,因为每个模板可以放置一次extends标记

我的案例非常简单,所以我想有一个简单的解决方案,但我对这里要遵循的include/extends逻辑有点迷茫


谢谢你的帮助。

我想你的意思是:
question=“生命是什么?”answer=“42”
django比我们想象的聪明多了。将include看作是内联html内容的模板提取。只需使用
mark_safe
标记,如果您将html传递给它,它就会呈现html。我处理这个问题的一种方法是,将所有的Q&A都放在数据库中,然后通过一个视图加载它——这样,您需要一个forloop来呈现所有html内容。谢谢!我实际上在考虑把问答放进我的数据库。我并不特别喜欢在不需要的时候创建查询,但您是对的,它将更易于管理,并且使用for循环编写模板!