您的位置:首页 > 编程语言 > Go语言

初识Django-模版文件templates

2017-10-09 17:18 260 查看
得到后台数据的3中途径:

为固定的数据:

{{ string | default:'字符串的默认值'}}

后台数据为列表
{% for course in courses %}
{{ course }}
{% endfor %}

后台数据为字典
<p>
{{ course_dict.name }}
{{ course_dict.age }}
{{ course_dict.height }}
{{ course_dict.weight }}
</p>

{% for key,value in course_dict.items %}
<p>{{ key }}:{{ value }}</p>
{% endfor %}

模版文件的继承简单解释:
模版继承:
1.子模版文件中的块内容可以覆盖父模版中的块内容 ;
2.父模版中存在的块,如果子模版中没有,渲染子模版的时候会把父模版中块的内容一块继承过来;
3.如果子模版中存在的块,父模版不存在,渲染子模版时,子模版存在的块不会被渲染

模版的查找原理:
Django查找模版的过程是在每一个app的templates文件夹中查找,而不单单只在当前app下的templates中查找;
每一个app下的templates文件夹会自动形成一个文件夹列表,当要渲染模版的时候,Django会自动遍历这个文件夹列表,直到在某一个文件夹中找到所需要的.html文件

优势:
各个app下的templates文件夹中的资源可以共享,相互访问
缺点:
如果多个app下的templates文件夹中,出现了相同的.html文件,那么在渲染模版的时候,可能会出现渲染错误的情况
解决办法:
1.保证每一个app下的templates文件夹中的.html文件名都不一样;
2.在各自app的templates文件夹中单独创建一个和应用名相同的文件夹

跳转路径的指定:
{#    通过URL的name属性,反向获取对应的网址,再通过王祖贤hi找到对应的视图函数,再执行视图函数获取响应#}
{#    不带参数的URL地址:{% url 'name' 参数%}#}
<a href="{% url 'sum1' 100 200 %}">name计算100+200的值</a><br>

<a href="{% url 'get_path' 10 20 %}">点击获取此次请求的网址</a><br>


 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: