欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

base模版扩展

程序员文章站 2022-03-24 23:12:53
...

模板扩展

一个块语句压缩了一些当你扩展时可能想要改变的模板元素

例如,为了使用一个能动态header块,你可以在父模版中添加:

<header>
    {% block header %}{% end %}
</header>

 然后为了在子模板中覆写{% block header %}{% end %}部分,你可以使用块的名字引用,并把想要的内容放到其中

{% block header %}{% end %}

{% block header %}
    <h1>Hello world!</h1>
{% end %}

 任何继承这个模板的文件都可以包含它自己的{% block header %}和{% end %},把一些不同的东西加进去

意味着你可以使用你的HTML相同代码为你网站不同的网页共享。
通过这种方法,当你想使用同样的信息或布局,或者你想改变某些模板内容时,你不必在每个文件中都重复着相同的代码。你仅仅只需要改变一个文件,而不是所有的。

<!DOCTYPE html>
{% load staticfiles %}
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Pos机</title>
    <link rel="stylesheet" href="../../static/css/style.css">  //外部样式表
    {% block style(标签名) %}
   //创建了一个block(块),这个模板标签允许你在其中插入扩展自base.html的模板的HTML代码
    {% endblock %}
</head>
<body>
<div>
    <div class="option">
        <div class="opt-list">
            <input type="button" class="list visit-link" value="Let's Go"/>
        </div>
    </div>
    {% block content %}
      //这个模板标签允许你在其中插入扩展自base.html的模板的HTML代码
  {% endblock %}
</div>
</body>
</html>

 模版文件引入:
{% extends 'blog(项目名)/base.html'(模版名) %}

css与jQuery方法引入再建一个模版标签即可
{% load staticfiles %}(加载静态文件)
{% block style(标签名) %}
    <link rel="stylesheet" href="{% static 'css/cart.css' %}">
    <script src="../../static/js/shopping_list.js"></script>
{% endblock style %}

 

应用模版:

{% extends 'cart/base.html' %}  //引入模版
{% load staticfiles %}  //加载静态文件,引入css,js
{% block style %}
    <link rel="stylesheet" href="../../static/css/home.css">
    <script src="../../static/js/home.js"></script>
{% endblock style %}
{% block content %}   //具体内容
    <div class="detail">
        <h1>Welcome to Let's Go!</h1>
        <p>商店里进行购物结算时会使用收银机(POS)系统,这台收银机会在结算时根据客户的
            购物车(Cart)中的商品(Item)和商店正在进行的优惠活动(Promotion)进行结算和打印购物清单。
            已知该商店正在对部分商品进行“买三送一”的优惠活动,即买三件商品其中一件是送的,按照两件商品价格结算。
            我们需要实现一个名为printInventory函数,该函数能够将指定格式
            的数据作为参数输入,然后在浏览器的控制台中输出结算清单的文本。
        </p>
        <input class="visit" type="button" value="Let's Go" onclick="location='shopping_list.html'">
    </div>
{% endblock content %}

 

 

相关标签: html django