请选择 进入手机版 | 继续访问电脑版
设为首页收藏本站

嵌入式天空

 找回密码
 我要注册

扫一扫,访问微社区

最近看过此主题的会员

查看: 1685|回复: 0

09Django模板继承

[复制链接]

344

主题

468

帖子

3963

积分

管理员

我是一个程序员

Rank: 9Rank: 9Rank: 9

积分
3963
发表于 2017-9-13 12:07:44 | 显示全部楼层 |阅读模式
模板继承
模板可以用继承的方式来实现复用。
接下来我们先创建之前项目的 templates 目录中添加 base.html 文件,代码如下:

HelloWorld/templates/base.html 文件代码:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>embsky</title>
</head>
<body>   
<h1>Hello World!</h1>     
<p> Django 测试。</p>     
{% block mainbody %}        
<p>original</p>     
{% endblock %}


</body> </html>以上代码中,名为 mainbody 的 block 标签是可以被继承者们替换掉的部分。
所有的 {% block %} 标签告诉模板引擎,子模板可以重载这些部分。
hello.html 中继承 base.html,并替换特定 block,hello.html 修改后的代码如下:

HelloWorld/templates/hello.html 文件代码:
{% extends "base.html" %}   
{% block mainbody %}<p>
继承了 base.html 文件</p>
{% endblock %}
第一行代码说明 hello.html 继承了 base.html 文件。可以看到,这里相同名字的 block 标签用以替换 base.html 的相应 block。
重新访问地址 http://127.0.0.1:8000/hello



最近很忙
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 我要注册

本版积分规则

QQ|Archiver|手机版|小黑屋|EBMSKY Inc. ( 冀ICP备17022971号-1  

GMT+8, 2019-11-18 15:08 , Processed in 0.075029 second(s), 36 queries .

Powered by Discuz! X3.2

© 2014-2018 Comsenz Inc. 【嵌入式天空】设计

快速回复 返回顶部 返回列表