美文网首页
关于django html block继承模板不想显示个别内容

关于django html block继承模板不想显示个别内容

作者: 小海怪的互联网 | 来源:发表于2021-10-01 22:00 被阅读0次

    今天在做一个网站项目时候发现了一个问题,就是模板中有个别通用的内容块不想在某个页面中显示,找了一圈没有找到很好的办法,后面通过琢磨找到了解决的方法。
    模板的代码:
    base.html

            <div id="proc_breadcrumb">
                <div class="container mt-2">
                        <nav aria-label="breadcrumb">
                          <ol class="breadcrumb">
                            <li class="breadcrumb-item"><a href="index.html">首页</a></li>
                            {% block cur_bread_page %}
    
                            {% endblock %}
                          </ol>
                        </nav>
                </div>
            </div>
    

    以上代码如果不做特殊处理在进行模板继承的时候,会默认显示全部的内容,但是我不想在页面中显示此块的内容,只想在需要的页面中显示,所以在模板文件中在相应的内容块外增加一个外层的 block 坑块,代码如下:

    {% block cur_breadcrumb %}
            <div id="proc_breadcrumb">
                <div class="container mt-2">
                        <nav aria-label="breadcrumb">
                          <ol class="breadcrumb">
                            <li class="breadcrumb-item"><a href="index.html">首页</a></li>
                            {% block cur_bread_page %}
    
                            {% endblock %}
                          </ol>
                        </nav>
                </div>
            </div>
    {%endblock%}
    

    然后在模板继承的时候:

    • 在需要的页面中只需要重写内容的内容,代码如下:
      about.html
    {% block cur_bread_page %}
        <li class="breadcrumb-item active" aria-current="page">自己的内容</li>
    {% endblock %}
    
    • 在不需要的页面中只写外层的block标签内容留空,这样内层的内容就不会显示了,代码如下:
      indexl.hmtl
    {% block cur_title %}
    <title>馨美优-主页</title>
    {% endblock %}
    
    {% block cur_breadcrumb %}
    
    {% endblock %}
    
    

    这只是我一个新手遇到的一个坑,如有刚好也遇到此问题的 猿友们,希望对你们帮助!!

    相关文章

      网友评论

          本文标题:关于django html block继承模板不想显示个别内容

          本文链接:https://www.haomeiwen.com/subject/qjdxnltx.html