创建模板
- 在项目中创建templates,模板可以都放在里面,或者在对应的视图中创建templates
- 在settings中配置templates的路径,如下,BASE_DIR是当前项目文件夹
- 当APP_DIR开启时,项目文件夹下的templates找不到的时候会进入app中的模板进行查找
视图向模板传递变量
- 模板使用DTL,Django Templates Language
DTL语法
取值
{{ 变量 }}
if 语句 ```python {% comment %} if语句 {% endcomment %} {% if ‘auth’ in book_info.keys %} {% comment %} 元组、列表使用下标取值!字典使用. 取值 {% endcomment %}
{{ book_info.auth }} is my favorite auth, I love him very much!
{% else %}
{% endif %}
- for 语句
```python
{% for i,v in book_info.items %}
<span>{{ i }}, {{ v }}</span><br>
{% endfor %}
url反转
{% url 'urlname' args %}
forloop
{{ forloop.counter }} 遍历的下标,从1开始
{{ forloop.counter0 }} 遍历的下标,下标从0开始
{{ forloop.first }} 是否是遍历的第一个
{{ forloop.last }} 是否是遍历的最后一个
with 在with语句内赋值于一个变量,仅限于with语句中使用
{% with var=value %}
{{ var }}
{% endwith %}