Django教程(4)——Django模板语法

目标:
了解Django模板的常用方法。

 

1. 一个典型的模板文件头

{% load staticfiles %}
<head>
    <title>{{ WebTitle }} </title>
    <link rel="shortcut icon" href="{% static 'image/favicon.ico' %}">
    <script src="{% static 'js/jquery.min.js' %}"></script>
</head>

其中{% load staticfiles %}用以加载静态文件路径。
使得后面的{% static 'image/favicon.ico' %}能够找得到。
{{ WebTitle }}是占位符,需要通过在views.py给变量WebTitle赋值。
(注意命令是个大括号夹两个百分号,变量是两个大括号)

Django是遵循MVC模式的开发框架,所以模板与views.py的联系密不可分。

 

2. 模板的继承

父页面father.html

<body>
    父页面这里定义了一个区块 SubContent ,由继承者在子页面中修改
    {% block SubContent %}
    {% endblock %}
</body>

子页面son.html

{% extends father.html %}
{% block SubContent%}
    <p>
        子页面在开头用 extends 方法继承了父页面,需要定义父页面中名为 SubContent 的区块。
        添加内容的位置在 block 和 endblock 标志之间。
    </p>
{% endblock %}

注意:继承命令{% extends father.html %}必须写在最前面!
 

3. 模板的嵌套

假设网页菜单栏为menu.html,当其他页面要使用该菜单栏时可以在需要放置的地方添加

{% include 'menu.html' %}

 

4. 条件判断与循环语句

Django的模板中也会用到if语句和for语句,例如:

{% for item in List %}
     {% if 'something' in item %}
          <p> hehe </p>
     {% else %}
          <div> {{ item }} </div>
     {% endif %}
{% endfor %}

其中for/ in/ if/ endif/ endfor是关键字,List是views.py传来的参数。

 

总结:
Django模板语法主要形式:
{% 命令 参数 %}
{% 命令 %}
{{ 变量 }}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容