• TP5模板布局+模板继承


    1.模板布局

    【1】在配置文件中开启模板布局并设置布局文件名

    1. //开启全局模板布局
    2. 'layout_on'=>true,
    3. //全局模板文件名
    4. 'layout_name'=>'layout',

    【2】创建头部和底部的公共模板文件,view/header.html ,view/footer.html

    【view/header.html】

    1. <!DOCTYPE html>
    2. <html lang="en">
    3. <head>
    4. <meta charset="UTF-8">
    5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
    6. <meta http-equiv="X-UA-Compatible" content="ie=edge">
    7. <title>Document</title>
    8. </head>
    9. <body>
    10. <h2 style="color:red">我是网站的头部</h2>

    【view/footer.html】

    1. <h2 style="color:green">我是网站的底部</h2>
    2. </body>
    3. </html>

    【3】创建布局文件 view/layout.html

    1. {//布局文件}
    2. {include file='header' /}
    3. {__CONTENT__}
    4. {include file='footer' /}

    【4】创建控制器要渲染的文件 view/demo9/test1.html

    hello world

    test1.html中内容最后会替换布局文件layout.html中{__CONTENT__}

    2.模板继承

    【1】关闭模板布局

     'layout_on'=>false,

    【2】创建2个被抽离的公共文件 view/public/header1.html,view/public/footer1.html

    【view/public/header1.html】

    1. <!DOCTYPE html>
    2. <html lang="en">
    3. <head>
    4. <meta charset="UTF-8">
    5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
    6. <meta http-equiv="X-UA-Compatible" content="ie=edge">
    7. <title>Document</title>
    8. </head>
    9. <body>
    10. <h2 style="color:blue">我是模板继成案例的头部</h2>

    【view/public/footer1.html】

    1. <h2 style="color:rgb(141, 13, 13)">我是继承案例底部</h2>
    2. </body>
    3. </html>

    【3】创建基础模板(父模板),view/public/base.html

    1. {//基础模板 当前页面公共部分全部抽象出来,而要变化的部分都定成区块block,不允许不出其他标签}
    2.  {include file='public/header1' /}
    3. {block name="body"}
    4. 主体
    5. {/block}
    6.  {block name="nav"}
    7. 导航
    8. {/block}
    9. {include file='public/footer1' /}

    【4】创建子模板 index/view/demo9/test2.html

    1. {//继承模板 不允许出现其他标签,所有内容必须写在block内}
    2. {extend name='public/base' /}
    3.  {//实现父模板base中的定义区块body}
    4. {block name="body"}
    5.  {//引用父模板中内容引入过来}
    6. {__block__}
    7. <h2 >我是模板继承案例主体</h2>
    8. {/block}
    9.  {//实现父模板base中的定义区块nav}
    10. {block name="nav"}
    11.  {/block}
  • 相关阅读:
    10-JavaScript 条件语句
    9-JavaScript 比较
    8-JavaScript 运算符
    6-JavaScript 事件
    Sum Problem 重定向文件的使用
    Calculate A + B.
    Vue中computed的本质及与methods的区别
    外部文件使用django的models
    DjangoURL反向解析
    字符串格式化的方式
  • 原文地址:https://www.cnblogs.com/Y15965521559/p/13745315.html
Copyright © 2020-2023  润新知