zoukankan      html  css  js  c++  java
  • 九十七:CMS系统之模板抽离和个人信息页面

    模板抽取,将公共的页面抽出来作为模板

    {% from 'common/_macros.html' import static %}
    <!DOCTYPE html>
    <html lang="en">
    <head>
    <meta charset="UTF-8">
    <title> {% block title %} {% endblock %} </title>
    <script src="http://cdn.bootcss.com/jquery/3.1.1/jquery.min.js"></script>
    <link href="http://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet">
    <script src="http://cdn.bootcss.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
    <link rel="stylesheet" href="{{ static('css/cms/cms_base.css') }}">
    <script src="{{ static('js/cms/cms_base.js') }}"></script>
    {% block head %} {% endblock %}
    </head>
    <body>
    <nav class="navbar navbar-inverse navbar-fixed-top" role="navigation">
    <div class="container-fluid">
    <div class="navbar-header">
    <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
    <span class="sr-only">Toggle navigation</span>
    <span class="icon-bar"></span>
    <span class="icon-bar"></span>
    <span class="icon-bar"></span>
    </button>
    <a class="navbar-brand" href="#">CMS管理系统</a>
    </div>
    <div id="navbar" class="navbar-collapse collapse">
    <ul class="nav navbar-nav navbar-right">
    <li><a href="#">{{ g.cms_user.username }}<span>[超级管理员]</span></a></li>
    <li><a href="{{ url_for('cms.logout') }}">注销</a></li>
    </ul>
    <form class="navbar-form navbar-right">
    <input type="text" class="form-control" placeholder="查找...">
    </form>
    </div>
    </div>
    </nav>

    <div class="container-fluid">
    <div class="row">
    <div class="col-sm-3 col-md-2 sidebar">
    <ul class="nav-sidebar">
    <li class="unfold"><a href="#">首页</a></li>
    <li class="profile-li">
    <a href="#">个人中心<span></span></a>
    <ul class="subnav">
    <li><a href="#">个人信息</a></li>
    <li><a href="#">修改密码</a></li>
    <li><a href="#">修改邮箱</a></li>
    </ul>
    </li>

    <li class="nav-group post-manage"><a href="#">帖子管理</a></li>
    <li class="comments-manage"><a href="#">评论管理</a></li>
    <li class="board-manage"><a href="#">板块管理</a></li>

    <li class="nav-group user-manage"><a href="#">用户管理</a></li>
    <li class="role-manage"><a href="#">组管理</a></li>

    <li class="nav-group cmsuser-manage"><a href="#">CMS用户管理</a></li>
    <li class="cmsrole-manage"><a href="#">CMS组管理</a></li>
    </ul>
    </div>
    <div class="col-sm-9 col-sm-offset-3 col-md-10 col-md-offset-2 main">
    <h1>{% block page_title %} {% endblock %} </h1>
    <div class="main_content">
    {% block main_content %} {% endblock %}
    </div>
    </div>
    </div>
    </div>
    </body>
    </html>

    首页继承模板,只需要渲染自己的内容即可

    {% extends 'cms/cms_base.html' %}

    {% block title %}
    CMS管理系统
    {% endblock %}

    {% block page_title %}
    欢迎来到CMS管理系统
    {% endblock %}

    个人信息页面

    @bp.route('/profile/')
    @login_required
    def profile():
    return render_template('cms/cms_profile.html')

    还是从g变量中拿个人信息

    {% extends 'cms/cms_index.html' %}

    {% block title %}
    个人信息
    {% endblock %}

    {% block page_title %}
    {{ self.title() }}
    {% endblock %}

    {% block main_content %}
    {% set user = g.cms_user %}
    <table class=" table table-bordered">
    <tbody>
    <tr>
    <td>用户名:</td>
    <td>{{ user.username }}</td>
    </tr>
    <tr>
    <td>邮箱:</td>
    <td>{{ user.email }}</td>
    </tr>
    <tr>
    <td>角色:</td>
    <td>待续</td>
    </tr>
    <tr>
    <td>权限:</td>
    <td>待续</td>
    </tr>
    <tr>
    <td>加入时间:</td>
    <td>{{ user.join_time }}</td>
    </tr>
    </tbody>
    </table>
    {% endblock %}

  • 相关阅读:
    package.json中 npm依赖包版本前的符号的意义
    移动端1px的border
    react下将输入的汉字转化为拼音
    h5打开App的方法。
    图片在缩放截取后以固定尺寸上传到第三方
    图片裁切,上传,自动匹配颜色。
    ReactNative学习一
    MySQL数据库8(二)MySQL基本介绍
    MySQL数据库8(一)SQL简介

  • 原文地址:https://www.cnblogs.com/zhongyehai/p/11914116.html
Copyright © 2011-2022 走看看