Django templates模板
HTML代码可以被直接硬编码在views视图代码中,虽然这样很容易看出视图是怎么工作的,但直接将HTML硬编码到视图里却并不是一个好主意。
让我们来看一下为什么:
对网站页面进行的任何更改都需要对views视图进行相应的修改,网站页面的设计修改往往比底层 Python 代码的修改要频繁得多,因此如果可以在不进行 Python 代码修改的情况下进行网站页面更改设计,那将会方便得多。
网站页面HTML设计和 python代码编写是两项不同的工作,大多数专业的网站开发环境都将他们分配给不同的人员(甚至不同部门)来完成。 网站页面设计者和HTML/CSS的编码人员不应该被要求去编辑Python的代码来完成他们的网站页面设计工作。
网站页面设计人员制作页面和程序员编写 Python代码两项工作同时进行的效率是最高的,远胜于让一个人等待另一个人完成对某个既包含又 HTML 包含Python的文件的编辑工作。
基于这些原因,将网站页面的设计和Python的代码分离会显得更干净简洁而且更容易维护。 我们可以使用 Django的 模板系统 (Template System)来实现这种模式,这就是本章我们要具体讨论的问题。
Django的模板:HTML代码+模板语法
模版包括在使用时会被值替换掉的 变量,和控制模版逻辑的 标签。
模板语法中的变量:
变量的语法表示:{{变量名}}
在 Django 模板中遍历复杂数据结构的关键是句点字符 . ,这个字符是跟views视图函数中的变量字典对应起来的。