zoukankan      html  css  js  c++  java
  • 加载静态文件,父模板的继承和扩展

    1. 用url_for加载静态文件
      1. <script src="{{ url_for('static',filename='js/login.js') }}"></script>
      2. flask 从static文件夹开始寻找
      3. 可用于加载css, js, image文件
    2. 继承和扩展
      1. 把一些公共的代码放在父模板中,避免每个模板写同样的内容。base.html
      2. 子模板继承父模板
        1.   {% extends 'base.html’ %}
      3. 父模板提前定义好子模板可以实现一些自己需求的位置及名称。block
        1. <title>{% block title %}{% endblock %}-MIS问答平台</title>
        2. {% block head %}{% endblock %}
        3. {% block main %}{% endblock %}
      4. 子模板中写代码实现自己的需求。block
        1.   {% block title %}登录{% endblock %}
    3. 首页、登录页、注册页都按上述步骤改写。
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>{% block title %}{% endblock %}导航</title>
        <link rel="stylesheet" type="text/css" href="../static/css/daohang.css">
        <script src="../static/js/daohang.js"></script>
        <link rel="stylesheet" href="{{ url_for('static',filename='css/daohang.css') }}">
    {% block head %}{% endblock %}
    </head>
    <body id="myBody">
    <nav class="navbar">
        <a href="{{ url_for('daohang') }}">首页</a>
        <a href="{{ url_for('denglu') }}">登录</a>
        <a href="{{ url_for('zhuce') }}">注册</a>
        <input type="text" name="search" placeholder="请输入关键字">
        <button type="submit">查找</button>
        <select class="navigate">
            <option>个人中心</option>
            <option>收藏</option>
            <option>点击</option>
        </select>
        <img id="myOnOff" src="http://www.runoob.com/images/pic_bulbon.gif" onclick="mySwitch()" width="20px">
    </nav>
    {% block main %} {% endblock %}
    </body>
    </html>
    {% extends 'daohang.html'  %}
    {% block title %}登录{% endblock %}
    {% block head %}
        <link rel="stylesheet" type="text/css" href="{{ url_for('static',filename='css/denglu.css') }}">
        <script src="{{ url_for('static',filename='js/denglu.js') }}"></script>
    {% endblock %}
    
    {% block main %}
    <div class="box">
    
        <h2>登录</h2>
        <div class="input_box">
            <input id="uname" type="text" placeholder="请输入用户名">
        </div>
        <div class="input_box">
            <input id="upass" type="password" placeholder="请输入密码">
        </div>
        <div id="error_box"><br></div>
        <div class="input_box">
            <button onclick="fnlogin()">登录</button>
        </div>
    </div>
    {% endblock %}
    {% extends 'daohang.html'  %}
    {% block title %}注册{% endblock %}
    {% block head %}
        <link rel="stylesheet" type="text/css" href="{{ url_for('static',filename='css/zhuce.css') }}">
        <script src="{{ url_for('static',filename='js/zhuce.js') }}"></script>
    {% endblock %}
    
    {% block main %}
    <div class="box">
        <h2>注册</h2>
        <div class="input_box">
            <input id="uname" type="text" placeholder="请输入用户名">
        </div>
        <div class="input_box">
            <input id="upass" type="password" placeholder="请输入密码">
        </div>
        <div class="input_box">
            <input id="upass1" type="password" placeholder="请再次输入密码">
        </div>
        <div id="error_box"><br></div>
        <div class="input_box">
            <button onclick="fnlogin()">注册</button>
        </div>
    </div>
    {% endblock %}

  • 相关阅读:
    浅谈jsp、freemarker、velocity区别
    python获取通道状态
    Uncaught TypeError: $(...).customFileInput is not a function
    CentOS环境下tomcat启动超级慢的解决方案
    错误处理
    Caused by: java.lang.ClassNotFoundException: com.alibaba.druid.support.http.StatViewServlet
    Uncaught TypeError: Cannot read property 'msie' of undefined
    使用__slots__:
    Oracle 分区索引
    获取对象信息
  • 原文地址:https://www.cnblogs.com/xiaojiaqi/p/7780606.html
Copyright © 2011-2022 走看看