• 学生管理之模板继承


    一、母版提取

    我们先看以下几个页面:

    班级管理

     

    学生管理

     

     老师管理

     

     

     你可以看出,除了每个红色框框以外,其他的地方都是一样的。这样我们就可以使用模板的功能,也就是只有部分地方需要填充。

    母版提取:

    <!DOCTYPE html>
    <html lang="zh-CN">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    //###################样式##################
        <style>
            body{
                margin: 0;
            }
            .hide{
                display: none;
            }
            .menu .item{
                display: block;
                padding: 5px 10px;
                border-bottom: 1px solid #dddddd;
            }
            .menu .item:hover{
                background-color: black;
                color: white;
            }
            .menu .item.active{
                background-color: black;
                color: white;
            }
    
            .modal{
                position: fixed;
                top: 50%;
                left: 50%;
                 500px;
                height: 400px;
                margin-top: -250px;
                margin-left: -250px;
                z-index: 100;
                background-color: white;
            }
            .remove{
                position: fixed;
                top: 50%;
                left: 50%;
                 400px;
                height: 200px;
                margin-top: -100px;
                margin-left: -200px;
                z-index: 100;
                background-color: #c00;
            }
            .shade{
                position: fixed;
                top: 0;
                left: 0;
                right: 0;
                bottom: 0;
                background-color: black;
                opacity: 0.5;
                z-index: 99;
            }
            .pagination a{
                display: inline-block;
                padding: 5px;
            }
            .pagination a.active{
                background-color: black;
                color: white;
            }
        </style>
        <!--link rel="stylesheet" href="/static/bootstrap-3.3.7-dist/css/bootstrap.min.css"-->
        {% block css %} {% endblock %}
    </head>
    <body>
    //###################左标题##################
        <div style="line-height:48px;height: 48px;background-color: black;color: white;">
            <span style="font-size:25px;color:white">学生管理系统</span>
    
    //###################右信息##################
            <div style="float: right">用户名:{{ username }}  | <a style='color:white' href="/logout.html">注销</a></div>
        </div>
    
        <div>
    //###################左导航##################
            <div class="menu" style="position: absolute;top: 48px;left: 0;bottom:0; 200px;background-color: #eeeeee">
                <a id="menu_class" class="item" href="/classes.html">班级管理</a>
                <a id="menu_student" class="item" href="/student.html">学生管理</a>
                <a id="menu_teacher" class="item" href="/teacher.html">老师管理</a>
            </div>
            <div style="padding-left:20px;position: absolute;top: 48px;left: 200px;bottom:0;right: 0;overflow: auto">
    
                {% block content %}需要我们填充内容的地方!!!!!!! {% endblock %}
    
            </div>
        </div>
    
    //###################JavaScript#################
        <script type="text/javascript" src="/static/jquery-2.1.4.min.js"></script>
        <!--script type="text/javascript" src="/static/bootstrap-3.3.7-dist/js/bootstrap.min.js"></script-->
         {% block js %} {% endblock %}
    </body>
    </html>
    

      

    二、母版继承

    班级管理填充:

    //继承母版
    {% extends "layout.html" %}
    
    //继承CSS
    {% block css %}
    
    {% endblock %}
    
    //继承content
    {% block content %}
        <h1>班级列表</h1>
        <div>
            <input id="id_add" type="button" value="添加" />
            <a href="/add_classes.html">添加</a>
        </div>
    
            <table border="1">
                <thead>
                    <tr>
                        <th>ID</th>
                        <th>标题</th>
                        <th>操作</th>
                    </tr>
                </thead>
                <tbody>
                    {% for item in cls_list %}
                        <tr>
                            <td alex="id">{{ item.id }}</td>
                            <td alex="caption">{{ item.caption }}</td>
                            <td>
                                <a class="td-edit">编辑</a>| <a target="_blank" href="/edit_classes.html?nid={{ item.id }}">跳转编辑</a> | <a class="td-delete" href="/delete_classes.html?nid={{ item.id }}" onclick="return confirm('确定删除吗?');">删除</a>
                            </td>
                        </tr>
                    {% endfor %}
                </tbody>
            </table>
    
        <div class="pagination">
            {{ str_pager|safe }}
        </div>
    
    <div class="modal hide">
        <form method="post" action="/classes.html" >
            <input name="id" type="text" class="hide" />
            <input name="caption" type="text" placeholder="班级名" />
            <br/>
            <input id="id_modal_cancel" type="button" value="取消"/>
            <input type="submit" value="Submit提交"/>
            <input type="button" id="modal_ajax_submit" value="Ajax提交"/>
        </form>
    </div>
    <div class="shade hide"></div>
    <div class="remove hide">
        <input id="id_remove_cancel" type="button" value="取消"/>
        <input type="button" value="确定"/>
    </div>
    
    {% endblock %}
    
    //继承JavaScript
    
    {% block js %}
       
    {% endblock %}
    

      

  • 相关阅读:
    宠物商店项目需求
    使用Ajax新闻系统管理需求分析
    java 面向对象面试题,问答题,构造方法,抽象类,继承,多态,接口,异常总结;
    如何在linux服务器部署Rstudio server,配置ODBC远程访问win 服务器上的SQL server
    R语言网络爬虫学习 基于rvest包
    用蒙特卡洛方法计算派-python和R语言
    R 语言学习日志 1
    kmeans聚类中的坑 基于R shiny 可交互的展示
    分类算法简介 基于R
    R 多线程和多节点并行计算
  • 原文地址:https://www.cnblogs.com/skyflask/p/9574568.html
Copyright © 2020-2023  润新知