在我的第一个Django项目上工作.模板和继承的新手.
我正在使用Bootstrap并想要一个引人注目的主页.所以我不想要侧边栏,只需要Jumbotron.
但是,我的index.html继承自base.html,并在我的主页上显示我想要的每个其他页面的侧边栏.我想要其他一切,导航,页脚等继承.
我的base.html:
{% block right_panel %}
blah blah blah
{% endblock %}
有没有办法在我的index.html中不继承这个块?
或者我使用base.html中的所有块减去那些我不想显示的块来创建一个独立的index.html模板?
什么是最佳做法?
编辑
这是base.html中令人讨厌的部分:
{% nevercache %}
{% include "includes/user_panel.html" %}
{% endnevercache %}
{% block right_panel %}
{% ifinstalled mezzanine.twitter %}
{% include "twitter/tweets.html" %}
{% endifinstalled %}
{% endblock %}
CSS正在渲染:< div class =“panel-body”>
我的page.html:
{% extends "base.html" %}
{% block right_panel %}{% endblock %}
{% load mezzanine_tags keyword_tags %}
{% block meta_title %}{{ page.meta_title }}{% endblock %}
{% block meta_keywords %}{% metablock %}
{% keywords_for page as keywords %}
{% for keyword in keywords %}
{% if not forloop.first %}, {% endif %}
{{ keyword }}
{% endfor %}
{% endmetablock %}{% endblock %}
{% block meta_description %}{% metablock %}
{{ page.description }}
{% endmetablock %}{% endblock %}
{% block title %}
{% editable page.title %}{{ page.title }}{% endeditable %}
{% endblock %}
{% block main %}
{% endblock %}
当我添加:
`{% block right_panel %}{% endblock %}
在page.html的顶部,内容不呈现.
什么是最好的方法?我应该创建一个新块并将其包裹在正在设置的样式周围,然后将其留在其他模板中吗?或者我应该将有问题的块从base.html移动到另一个模板文件并将其包含在我想要它呈现的页面上.
还有,另一件事.如果我从page.html中删除{%block right_panel%} {%endblock%}并将其放在从page.html继承的gallery.html中,则内容仍会呈现.