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. 首页、登录页、注册页都按上述步骤改写。
    4. 父模板:
      <!DOCTYPE html>
      <html lang="en">
      <head>
          <meta charset="UTF-8">
          <title>登录界面</title>
          <link rel="stylesheet" href="../static/css/base.css" type="text/css">
          <script src="../static/js/base.js"></script>
           <base target="_blank" />
      </head>
      <body id="myBody">
      
      <nav class="nav">
          <ul>
              <li><a href="{{ url_for('index') }}"><img  src="../static/images/shouye.jpg">首页</a></li>
              <li><a href="{{ url_for('sign_in') }}"><img src="../static/images/denglu.jpg">登录</a></li>
              <li><a href="{{ url_for('sign_up') }}"><img src="../static/images/zhuce.jpg">注册</a></li>
              <img id="on_off" onclick="mySwitch()" src="../static/images/pic_bulbon.gif" width="50px">
              <button style="float: right;margin: 5px auto;border-radius: 5px;height: 30px" type="submit">搜索</button>
              <input style="float: right;margin: 5px auto;border-radius: 8px; 200px;height: 20px;"  type="text" name="search"PLACEHOLDER="输入要搜索的内容">
      
          </ul>
      </nav>
      
      <div id="bottom">
          <a href="">联系我们</a>
          <a href="">加入我们</a>
          <a href="">合作伙伴</a>
      </div>
      
      <div class="copyright">
          <p>Copyright &copy; 2017. Created by <a href="#" target="_blank">ben</a></p>
      </div>
      
      </body>
      </html>

      首页:

      {% extends'base.html' %}
      {% block title %}
          Home
      {% endblock %}
      {% block head %}
          <link rel="stylesheet" href="{{ url_for('static',filename='css/index.css')}}" type="text/css">
      {% endblock %}
      {% block main %}
      <body>
      <div class="all">
          <div class="pic">
              <a href="">
                  <img src="http://pal4.roogames.com/pal4/pal4index_files/pic/pic_d_22.jpg"></a>
              <div class="ziying"><a  href="https://baike.baidu.com/item/%E6%85%95%E5%AE%B9%E7%B4%AB%E8%8B%B1/3622704?fr=aladdin">慕容紫英</a></div>
          </div>
          <div class="pic">
              <a href="">
                  <img src="http://pal4.roogames.com/pal4/pal4index_files/pic/pic_d_23.jpg"></a>
              <div class="tianhe"><a href="https://baike.baidu.com/item/%E4%BA%91%E5%A4%A9%E6%B2%B3/11894?fr=aladdin&fromid=9077568&fromtitle=%E5%A4%A9%E6%B2%B3">云天河</a></div>
          </div>
          <div class="pic">
              <a href="">
                  <img src="http://pal4.roogames.com/pal4/pal4index_files/pic/pic_24.jpg"></a>
              <div class="mengli"><a href="https://baike.baidu.com/item/%E6%9F%B3%E6%A2%A6%E7%92%83/3622691?fr=aladdin">柳梦璃</a></div>
          </div>
          <div class="pic">
              <a href="">
                  <img src="http://pal4.roogames.com/pal4/pal4index_files/pic/pic_03.jpg"></a>
              <div class="lingsha"><a href="https://baike.baidu.com/item/%E9%9F%A9%E8%8F%B1%E7%BA%B1/3622760?fr=aladdin">韩菱纱</a></div>
          </div>
      </div>
      </body>
      {% endblock %}
      </html>

      登录:

      {% extends 'base.html' %}
      
      {% block title %}
          登陆
      {% endblock %}
      
      {% block head %}
       <script src="{{ url_for('static',filename='js/ggg.js') }}"></script>
          <link rel="stylesheet" href="{{ url_for('static',filename='css/vvv.css')}}">
          <link href="//netdna.bootstrapcdn.com/font-awesome/4.0.3/css/font-awesome.css" rel="stylesheet">
          <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/meyer-reset/2.0/reset.min.css">
      {% endblock %}
      
      {% block main %}
      <body>
      <div class="div1">
          <div class="div2">登录</div>
          <div class="div3">
             <div class="iconfont ic-user"></div> 用户:<input id="username" type="text" placeholder="请输入用户名">
          </div>
          <div class="div3">
              密码:<input id="userpass" type="text" placeholder="请输入密码">
          </div>
          <div id="error_box"><br></div>
           <div class="div3">
              <button onclick="myLogin()">登陆</button>
          </div>
      </div>
      </body>
      {% endblock %}
      </html>

      注册

      {% extends'base.html' %}
      {% block title %}
          注册
      {% endblock %}
          {% block head %}
          <link rel="stylesheet" href="{{ url_for('static',filename='css/yyy.css')}}">
           <script src="{{ url_for('static',filename='js/rrr.js') }}"></script>
      {% endblock %}
      {% block main %}
      <body>
      
      <div class="div1">
          <div class="div2">登录注册</div>
          <div class="div3">
              请输入你的昵称:<input id="username" type="text" placeholder="请输入你的昵称">
          </div>
          <div class="div3">
                         设置密码:<input id="userpass" type="text" placeholder="请输入密码">
          </div>
          <div class="div3">
                         重复密码:<input id="userpass1" type="text" placeholder="请再次输入密码">
          </div>
          <div class="div3">
                请输入手机号:<input id="phonenumber" type="text" placeholder="请输入11位手机号">
          </div>
          <div id="error_box"><br></div>
           <div class="div3">
              <button onclick="myLogin()">注册</button>
          </div>
          <div class="div2">点击 “注册” 即表示您同意并愿意遵守<br>用户协议 和 隐私政策 。</div>
      </div>
      <br>
      </body>
      </html>
  • 相关阅读:
    使用 asp.net mvc和 jQuery UI 控件包
    ServiceStack.Redis 使用教程
    HTC T8878刷机手册
    Entity Framework CodeFirst 文章汇集
    2011年Mono发展历程
    日志管理实用程序LogExpert
    使用 NuGet 管理项目库
    WCF 4.0路由服务Routing Service
    精进不休 .NET 4.0 (1) asp.net 4.0 新特性之web.config的改进, ViewStateMode, ClientIDMode, EnablePersistedSelection, 控件的其它一些改进
    精进不休 .NET 4.0 (7) ADO.NET Entity Framework 4.0 新特性
  • 原文地址:https://www.cnblogs.com/0055sun/p/7805586.html
Copyright © 2011-2022 走看看