django多模板继承-这是正确的样式吗?

django多模板继承-这是正确的样式吗?,django,django-templates,Django,Django Templates,哟 所以我有一个base.html: <html> <body> <div id="header"> ... </div> {% block main %}{% endblock %} <div id="footer"> ... </div> </body> </html> 然后,对于每一件不同的作品,我可以有: usersArea.h

所以我有一个base.html:

<html>
    <body>
        <div id="header"> ... </div>
        {% block main %}{% endblock %}
        <div id="footer"> ... </div>
    </body>
</html>
然后,对于每一件不同的作品,我可以有:

usersArea.html:

{% extends snazzy.html %|
  {% block aboveSnazzy%}
      <h1>welcome to yours posts hangout!</h1>
  {% endblock %}


  {% block belowSnazzy%}
      <h1>i didn't think this far ahead in the example</h1>
  {% endblock %}
{% endblock%}
{%extends snazzy.html%|
{snazzy%上的%block}
欢迎来到你的帖子!
{%endblock%}
{%block belowSnazzy%}
在这个例子中,我并没有想到这一点
{%endblock%}
{%endblock%}
其他的作品也是如此

好的,我知道我可以发送一个带有不同标题的参数,或者你有什么-让我们假设上面的时髦东西是,我不知道,显示一些我喜欢的其他模板,或者做一些非琐碎的事情。我在上面详述的是做这件事的“方法”吗

干杯

答案取决于模板有多少共同点

  • 如果你的模板有很多共同点,比如说,它们是你网站某个部分的页面,或者只是有一个非常共同的结构,那么你的做法是正确的。我只是认为你应该对这些块使用更多的描述性名称

    {% extends base.html %}
    {% block page_heading %}{% endblock %}
        ... snazzy code here that shows all the posts by all the users ...
    {% block extra_content %}{% endblock %}
    
  • 如果您的模板没有太多共同点,但共享一些特定的内容块,那么情况就不同了,因为很难创建正确继承的结构。在这种情况下,您应该使用标记。例如,制作另一个显示帖子的模板,例如
    \u list\u posts.html
    ,然后在子模板中使用它美国

    {% extends base.html %}
    {% block main %}
    <h1>Welcome to your posts hangout!</h1>
    {% include '_list_posts.html' %}
    {% endblock %}
    
    {%extends base.html%}
    {%block main%}
    欢迎来到你的帖子!
    {%include'\u list\u posts.html%}
    {%endblock%}
    
    你也可以用这个


那么,您应该选择哪个选项?试着回答以下问题:这两个模板是否有一个共同的父项?如果是,请选择第一个选项。否则,选择第二个选项。

Thankyo!我不知道include/include标记。我会看看它们的!
{% extends snazzy.html %|
  {% block aboveSnazzy%}
      <h1>welcome to yours posts hangout!</h1>
  {% endblock %}


  {% block belowSnazzy%}
      <h1>i didn't think this far ahead in the example</h1>
  {% endblock %}
{% endblock%}
{% extends base.html %}
{% block page_heading %}{% endblock %}
    ... snazzy code here that shows all the posts by all the users ...
{% block extra_content %}{% endblock %}
{% extends base.html %}
{% block main %}
<h1>Welcome to your posts hangout!</h1>
{% include '_list_posts.html' %}
{% endblock %}