所以我正在用django构建一个应用程序。我团队中的一些人认为我应该在模板中使用include,而不是遵循blocks/extends范式。他们认为:
我真的不想破坏我的应用程序的模板,所以我试着提出一些令人信服的理由(对于非django用户)来解释为什么继承真的是前进的方向。我想听听大家对这个问题的看法。你知道吗
我已经想出了几个理由:
更干燥。确保样板html结构只需要在一个位置定义;大大降低了模板不同步的风险
保留属于模板中、模板中和视图外的内容;例如:
<title>{% block title %}My Website{% endblock %}</title>
与
<title>{{ pagetitle }}</title>
这样,前端维护人员就可以更好地控制前端,而不必深入研究后端视图
前端编码人员必须熟悉从基扩展/覆盖默认值的继承概念;请考虑以下css:
.nav {
color: blue;
}
.nav.active {
color: purple;
}
你有什么好的理由可以加入其中吗?你知道吗
使用继承可以更容易地(至少IMHO)创建主控形状基本.html模板,并让所有其他页面
extends
它。这使得所有的布局/样式都要在一个文件中指定,其余的只是以标准化的方式使用带有id
和class
的标记。你知道吗最好记住,
extends
(以及include
)的参数可以是变量。我们的templates/base.html
是一行:其中
base_template
是在主上下文处理器中设置的。这与一个简单的管理小部件一起改变了session.base_template
,使得我们的设计人员可以创建多个布局并通过单击在它们之间切换。她绝对喜欢。你知道吗相关问题 更多 >
编程相关推荐