Django模板导入母版继承和自定义返回Html片段过程解析

时间:2021-05-22

1.ROOT_URLCONF = '总路由所在路径(比如untitled.urls)'<===默认情况是这样

根路由的路径是可以修改的:ROOT_URLCONF = app01.urls<===根路由写在app01下面

2.静态文件引入的三种方式

一:

<link rel="stylesheet" href="/static/dd/ssmycss.css" rel="external nofollow" > .

二:

{% load static %}
<link rel="stylesheet" href="{% static 'dd/ss/mycss.css' %}" rel="external nofollow" >

三:

<link rel="stylesheet" href="{% get_static_prefix %}dd/ss/mycss.css" rel="external nofollow" >

3.模板导入===就是这么简单

把公共的部分,放在一个新建的模板中,比如index.html。

想在哪里用公共的部分,直接{%include ‘index.html'%}<===标签

母版继承 === 这个才是个小重点

母版的样式是固定的,所以继承过来的盒子不论在前还是在后,位置都是不变的。

1 写一个母版 base.html ===母版 2 要更改的地方( ) {% block base %} base是母版的盒子名称 母版的盒子里也可以写东西 {% endblock %} 3 调用: 3.1 必须写在第一行 {%extends 'base.html' %} 3.2 {% block base %} 自己的东西 {% endblock my_head%} 这儿加my_head是为了更清晰的看到结束条件。 3.3 还想用母版里的内容({{block.super}} 放在那,原来母版里的东西,就会渲染在哪) {% block base %} {{block.super}} 自己的东西 {% endblock my_head%} 3.4 如过不继承盒子,它会用原来的内容,如果继承了,没写自己的东西,它会空白,替换了原来的盒子。 3.5 盒子在继承时,跟顺序无关

自定义返回Html片段步骤

自定义 inclusion_tag 1 先去setting里面把app名字配置上 2 再app目录下创建一个templatetags模块 3 写py文件(my_test.py) 4 from django import template 5 register=template.Library() 6 @register.inclusion_tag('test.html') def my_inclusion(n): data=[] for i in range(n): data.append('第%s行'%i) return {'data':data} 7 写test.html页面 <ul> {% for choice in data %} <li>{{ choice }}</li> {% endfor %} </ul> 8 {% load my_test %} 9 {% my_inclusion 10 %} 它会返回html的页面

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章