前言
学无止境,无止境学。大家好,我是张大鹏,之前在抖音有5万多粉丝,不过现在不拍视频,专心写公众号了。笔者目前是高级Python工程师,之前是全栈工程师,主要擅长Golang和Python开发,对于Java,Vue,React也有一些研究。工作之余,喜欢学习和分享,希望能够通过此公众号”张大鹏520″,将自己学到的东西分享给大家,和大家一起交流,一起成长,一起进步。
今天要给大家分享的是《Django加Vue电商项目实战16 准备管理系统模板》,这是一个系列的教程,从零基础到项目实战。在本教程中,我会给大家介绍如何搭建商城系统后台的页面模板。比如首页,图表页面,表格页面等。还会配套相关的练习,大家学完以后可以自行通过练习题巩固和加深对知识点的理解。
如果大家需要本教程的PDF电子书或者完整的源码,可以在文末找到获取方式哈。
模板预览
首页
按钮
段落
mdi图标
基础表单
chartjs图表
基础表格
空白页面
公共代码
公共样式
{% load static %}
<link rel="stylesheet" href="{% static 'vendors/mdi/css/materialdesignicons.min.css' %}">
<link rel="stylesheet" href="{% static 'vendors/css/vendor.bundle.base.css' %}">
<link rel="stylesheet" href="{% static 'css/style.css' %}">
<link rel="shortcut icon" href="{% static 'assets/images/favicon.ico' %}"/>
公共顶部导航
{% load static %}
{#顶部导航开始#}
<nav class="navbar default-layout-navbar col-lg-12 col-12 p-0 fixed-top d-flex flex-row">
{#logo#}
<div class="text-center navbar-brand-wrapper d-flex align-items-center justify-content-center">
<a class="navbar-brand brand-logo" href="{% url 'index:index' %}">
<img src="{% static 'images/logo.svg' %}" alt="logo"/>
</a>
<a class="navbar-brand brand-logo-mini" href="{% url 'index:index' %}">
<img src="{% static 'images/logo-mini.svg' %}" alt="logo"/>
</a>
</div>
{#导航菜单#}
<div class="navbar-menu-wrapper d-flex align-items-stretch">
<button class="navbar-toggler navbar-toggler align-self-center" type="button" data-toggle="minimize">
<span class="mdi mdi-menu"></span>
</button>
{#搜索#}
<div class="search-field d-none d-md-block">
<form class="d-flex align-items-center h-100" action="#">
<div class="input-group">
<div class="input-group-prepend bg-transparent">
<i class="input-group-text border-0 mdi mdi-magnify"></i>
</div>
<input type="text" class="form-control bg-transparent border-0" placeholder="请输入...">
</div>
</form>
</div>
{#右侧菜单#}
<ul class="navbar-nav navbar-nav-right">
{#头像#}
<li class="nav-item nav-profile dropdown">
<a class="nav-link dropdown-toggle" id="profileDropdown" href="#" data-bs-toggle="dropdown"
aria-expanded="false">
<div class="nav-profile-img">
<img src="{% static 'images/faces/face1.jpg' %}" alt="image">
<span class="availability-status online"></span>
</div>
<div class="nav-profile-text">
<p class="mb-1 text-black">zhangdapeng</p>
</div>
</a>
<div class="dropdown-menu navbar-dropdown" aria-labelledby="profileDropdown">
<a class="dropdown-item" href="#">
<i class="mdi mdi-cached me-2 text-success"></i> 用户日志
</a>
<div class="dropdown-divider"></div>
<a class="dropdown-item" href="#">
<i class="mdi mdi-logout me-2 text-primary"></i> 注销
</a>
</div>
</li>
{#全屏#}
<li class="nav-item d-none d-lg-block full-screen-link">
<a class="nav-link">
<i class="mdi mdi-fullscreen" id="fullscreen-button"></i>
</a>
</li>
{#消息#}
<li class="nav-item dropdown">
<a class="nav-link count-indicator dropdown-toggle" id="messageDropdown" href="#"
data-bs-toggle="dropdown" aria-expanded="false">
<i class="mdi mdi-email-outline"></i>
<span class="count-symbol bg-warning"></span>
</a>
<div class="dropdown-menu dropdown-menu-right navbar-dropdown preview-list"
aria-labelledby="messageDropdown">
<h6 class="p-3 mb-0">消息列表</h6>
<div class="dropdown-divider"></div>
<a class="dropdown-item preview-item">
<div class="preview-thumbnail">
<img src="{% static 'images/faces/face4.jpg' %}" alt="image" class="profile-pic">
</div>
<div class="preview-item-content d-flex align-items-start flex-column justify-content-center">
<h6 class="preview-subject ellipsis mb-1 font-weight-normal">标记并发送你的消息</h6>
<p class="text-gray mb-0"> 1 分钟以前 </p>
</div>
</a>
<div class="dropdown-divider"></div>
<a class="dropdown-item preview-item">
<div class="preview-thumbnail">
<img src="{% static 'images/faces/face2.jpg' %}" alt="image" class="profile-pic">
</div>
<div class="preview-item-content d-flex align-items-start flex-column justify-content-center">
<h6 class="preview-subject ellipsis mb-1 font-weight-normal">标记并发送你的消息</h6>
<p class="text-gray mb-0"> 15 分钟以前 </p>
</div>
</a>
<div class="dropdown-divider"></div>
<a class="dropdown-item preview-item">
<div class="preview-thumbnail">
<img src="{% static 'images/faces/face3.jpg' %}" alt="image" class="profile-pic">
</div>
<div class="preview-item-content d-flex align-items-start flex-column justify-content-center">
<h6 class="preview-subject ellipsis mb-1 font-weight-normal">更新你的头像</h6>
<p class="text-gray mb-0"> 18 分钟以前 </p>
</div>
</a>
<div class="dropdown-divider"></div>
<h6 class="p-3 mb-0 text-center">4 条新消息</h6>
</div>
</li>
{#通知#}
<li class="nav-item dropdown">
<a class="nav-link count-indicator dropdown-toggle" id="notificationDropdown" href="#"
data-bs-toggle="dropdown">
<i class="mdi mdi-bell-outline"></i>
<span class="count-symbol bg-danger"></span>
</a>
<div class="dropdown-menu dropdown-menu-right navbar-dropdown preview-list"
aria-labelledby="notificationDropdown">
<h6 class="p-3 mb-0">通知列表</h6>
<div class="dropdown-divider"></div>
<a class="dropdown-item preview-item">
<div class="preview-thumbnail">
<div class="preview-icon bg-success">
<i class="mdi mdi-calendar"></i>
</div>
</div>
<div class="preview-item-content d-flex align-items-start flex-column justify-content-center">
<h6 class="preview-subject font-weight-normal mb-1">今日提现</h6>
<p class="text-gray ellipsis mb-0"> 记得学习Django哦 </p>
</div>
</a>
<div class="dropdown-divider"></div>
<a class="dropdown-item preview-item">
<div class="preview-thumbnail">
<div class="preview-icon bg-warning">
<i class="mdi mdi-settings"></i>
</div>
</div>
<div class="preview-item-content d-flex align-items-start flex-column justify-content-center">
<h6 class="preview-subject font-weight-normal mb-1">设置</h6>
<p class="text-gray ellipsis mb-0"> 更新面板 </p>
</div>
</a>
<div class="dropdown-divider"></div>
<a class="dropdown-item preview-item">
<div class="preview-thumbnail">
<div class="preview-icon bg-info">
<i class="mdi mdi-link-variant"></i>
</div>
</div>
<div class="preview-item-content d-flex align-items-start flex-column justify-content-center">
<h6 class="preview-subject font-weight-normal mb-1">启动后台</h6>
<p class="text-gray ellipsis mb-0"> 新的后台管理系统 </p>
</div>
</a>
<div class="dropdown-divider"></div>
<h6 class="p-3 mb-0 text-center">查看所有通知</h6>
</div>
</li>
{#图标#}
<li class="nav-item nav-logout d-none d-lg-block">
<a class="nav-link" href="#">
<i class="mdi mdi-power"></i>
</a>
</li>
{#图标#}
<li class="nav-item nav-settings d-none d-lg-block">
<a class="nav-link" href="#">
<i class="mdi mdi-format-line-spacing"></i>
</a>
</li>
</ul>
<button class="navbar-toggler navbar-toggler-right d-lg-none align-self-center" type="button"
data-toggle="offcanvas">
<span class="mdi mdi-menu"></span>
</button>
</div>
</nav>
{#顶部导航结束#}
公共左侧导航
{% load static %}
{#左侧导航开始#}
<nav class="sidebar sidebar-offcanvas" id="sidebar">
<ul class="nav">
{#用户#}
<li class="nav-item nav-profile">
<a href="#" class="nav-link">
<div class="nav-profile-image">
<img src="{% static 'images/faces/face1.jpg' %}" alt="profile">
{#登录状态:online在线,busy忙碌,offline离线#}
<span class="login-status online"></span>
</div>
<div class="nav-profile-text d-flex flex-column">
<span class="font-weight-bold mb-2">张大鹏</span>
<span class="text-secondary text-small">Python技术专家</span>
</div>
<i class="mdi mdi-bookmark-check text-success nav-profile-badge"></i>
</a>
</li>
{#首页#}
<li class="nav-item">
<a class="nav-link" href="{% url 'index:index' %}">
<span class="menu-title">首页</span>
<i class="mdi mdi-home menu-icon"></i>
</a>
</li>
{#UI元素#}
<li class="nav-item">
<a class="nav-link" data-bs-toggle="collapse" href="#ui-basic" aria-expanded="false"
aria-controls="ui-basic">
<span class="menu-title">基础UI元素</span>
<i class="menu-arrow"></i>
<i class="mdi mdi-crosshairs-gps menu-icon"></i>
</a>
<div class="collapse" id="ui-basic">
<ul class="nav flex-column sub-menu">
<li class="nav-item">
<a class="nav-link" href="{% url 'index:ui_buttons' %}">按钮</a>
</li>
<li class="nav-item">
<a class="nav-link" href="{% url 'index:ui_typography' %}">段落</a>
</li>
</ul>
</div>
</li>
{#mdi图标#}
<li class="nav-item">
<a class="nav-link" href="{% url 'index:icons_mdi' %}">
<span class="menu-title">mdi图标</span>
<i class="mdi mdi-contacts menu-icon"></i>
</a>
</li>
{#表单#}
<li class="nav-item">
<a class="nav-link" href="{% url 'index:forms_basic' %}">
<span class="menu-title">基础表单</span>
<i class="mdi mdi-format-list-bulleted menu-icon"></i>
</a>
</li>
{#图表#}
<li class="nav-item">
<a class="nav-link" href="{% url 'index:charts_chartjs' %}">
<span class="menu-title">chartjs图表</span>
<i class="mdi mdi-chart-bar menu-icon"></i>
</a>
</li>
{#表格#}
<li class="nav-item">
<a class="nav-link" href="{% url 'index:tables_basic' %}">
<span class="menu-title">基础表格</span>
<i class="mdi mdi-table-large menu-icon"></i>
</a>
</li>
{#示例页面#}
<li class="nav-item">
<a class="nav-link" data-bs-toggle="collapse" href="#general-pages" aria-expanded="false"
aria-controls="general-pages">
<span class="menu-title">示例页面</span>
<i class="menu-arrow"></i>
<i class="mdi mdi-medical-bag menu-icon"></i>
</a>
<div class="collapse" id="general-pages">
<ul class="nav flex-column sub-menu">
<li class="nav-item">
<a class="nav-link" href="{% url 'index:examples_blank' %}">
空白页面
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="{% url 'index:examples_login' %}">
登录页面
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="{% url 'index:examples_register' %}">
注册页面
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="{% url 'index:examples_404' %}">
404
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="{% url 'index:examples_500' %}">
500
</a>
</li>
</ul>
</div>
</li>
<li class="nav-item sidebar-actions">
<span class="nav-link">
<div class="border-bottom">
<h6 class="font-weight-normal mb-3">项目管理</h6>
</div>
<button class="btn btn-block btn-lg btn-gradient-primary mt-4">+ 添加项目</button>
<div class="mt-4">
<div class="border-bottom">
<p class="text-secondary">分类</p>
</div>
<ul class="gradient-bullet-list mt-4">
<li>开源版</li>
<li>商业版</li>
</ul>
</div>
</span>
</li>
</ul>
</nav>
{#左侧导航结束#}
公共底部
{#底部开始#}
<footer class="footer">
<div class="container-fluid d-flex justify-content-between">
<span class="text-muted d-block text-center text-sm-start d-sm-inline-block">
版权所有 © 张大鹏
</span>
<span class="float-none float-sm-end mt-1 mt-sm-0 text-end">
开源版本
<a href="https://github.com/zhangdapeng520" target="_blank">Github</a> 地址</span>
</div>
</footer>
{#底部结束#}
公共js
{% load static %}
<script src="{% static 'js/vendor.bundle.base.js' %}"></script>
<script src="{% static 'js/off-canvas.js' %}"></script>
<script src="{% static 'js/hoverable-collapse.js' %}"></script>
<script src="{% static 'js/misc.js' %}"></script>
模板页面
首页
{% load static %}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<title>大鹏商城后台管理系统</title>
{% include "layout/css.html" %}
</head>
<body>
<div class="container-scroller">
{#顶部导航开始#}
{% include "layout/top_nav.html" %}
{#顶部导航结束#}
<div class="container-fluid page-body-wrapper">
{#左侧导航开始#}
{% include "layout/left_nav.html" %}
{#左侧导航结束#}
{#内容开始#}
<div class="main-panel">
<div class="content-wrapper">
{#顶部面包屑#}
<div class="page-header">
<h3 class="page-title">
<span class="page-title-icon bg-gradient-primary text-white me-2">
<i class="mdi mdi-home"></i>
</span>
首页
</h3>
<nav aria-label="breadcrumb">
<ul class="breadcrumb">
<li class="breadcrumb-item active" aria-current="page">
<span></span>概览
<i class="mdi mdi-alert-circle-outline icon-sm text-primary align-middle"></i>
</li>
</ul>
</nav>
</div>
{#三张卡片开始#}
<div class="row">
<div class="col-md-4 stretch-card grid-margin">
<div class="card bg-gradient-danger card-img-holder text-white">
<div class="card-body">
<img src="{% static 'images/dashboard/circle.svg' %}" class="card-img-absolute"
alt="circle-image"/>
<h4 class="font-weight-normal mb-3">
本周交易额
<i class="mdi mdi-chart-line mdi-24px float-right"></i>
</h4>
<h2 class="mb-5">$ 15,0000</h2>
<h6 class="card-text">增长 60%</h6>
</div>
</div>
</div>
<div class="col-md-4 stretch-card grid-margin">
<div class="card bg-gradient-info card-img-holder text-white">
<div class="card-body">
<img src="{% static 'images/dashboard/circle.svg' %}" class="card-img-absolute"
alt="circle-image"/>
<h4 class="font-weight-normal mb-3">
本周订单量
<i class="mdi mdi-bookmark-outline mdi-24px float-right"></i>
</h4>
<h2 class="mb-5">45,6334</h2>
<h6 class="card-text">下降 10%</h6>
</div>
</div>
</div>
<div class="col-md-4 stretch-card grid-margin">
<div class="card bg-gradient-success card-img-holder text-white">
<div class="card-body">
<img src="{% static 'images/dashboard/circle.svg' %}" class="card-img-absolute"
alt="circle-image"/>
<h4 class="font-weight-normal mb-3">
本周在线人数
<i class="mdi mdi-diamond mdi-24px float-right"></i>
</h4>
<h2 class="mb-5">95,5741</h2>
<h6 class="card-text">增长 5%</h6>
</div>
</div>
</div>
</div>
{#三张卡片结束#}
{#两张图表卡片开始#}
<div class="row">
<div class="col-md-7 grid-margin stretch-card">
<div class="card">
<div class="card-body">
<div class="clearfix">
<h4 class="card-title float-left">浏览量和销售量统计</h4>
<div id="visit-sale-chart-legend"
class="rounded-legend legend-horizontal legend-top-right float-right"></div>
</div>
<canvas id="visit-sale-chart" class="mt-4"></canvas>
</div>
</div>
</div>
<div class="col-md-5 grid-margin stretch-card">
<div class="card">
<div class="card-body">
<h4 class="card-title">流量来源</h4>
<canvas id="traffic-chart"></canvas>
<div id="traffic-chart-legend"
class="rounded-legend legend-vertical legend-bottom-left pt-4"></div>
</div>
</div>
</div>
</div>
{#两张图表卡片结束#}
{#表格开始#}
<div class="row">
<div class="col-12 grid-margin">
<div class="card">
<div class="card-body">
<h4 class="card-title">最近的机票</h4>
<div class="table-responsive">
<table class="table">
<thead>
<tr>
<th> 用户</th>
<th> 标题</th>
<th> 状态</th>
<th> 最近更新时间</th>
<th> 机票编号</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<img src="{% static 'images/faces/face1.jpg' %}" class="me-2"
alt="image">
张三
</td>
<td>未收到款项</td>
<td>
<label class="badge badge-gradient-success">已完成</label>
</td>
<td>2022年03月22日</td>
<td>WD-12345</td>
</tr>
<tr>
<td>
<img src="{% static 'images/faces/face2.jpg' %}" class="me-2"
alt="image">
李四
</td>
<td>加载时间太长了</td>
<td>
<label class="badge badge-gradient-warning">进行中</label>
</td>
<td>2022年03月22日</td>
<td>WD-12345</td>
</tr>
<tr>
<td>
<img src="{% static 'images/faces/face3.jpg' %}" class="me-2"
alt="image">
王五
</td>
<td>站点停用一周</td>
<td>
<label class="badge badge-gradient-info">持有</label>
</td>
<td>2022年03月22日</td>
<td>WD-12345</td>
</tr>
<tr>
<td>
<img src="{% static 'images/faces/face4.jpg' %}" class="me-2"
alt="image">
张珊珊
</td>
<td>服务器丢失数据</td>
<td>
<label class="badge badge-gradient-danger">拒绝</label>
</td>
<td>2022年03月22日</td>
<td>WD-12345</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
{#表格结束#}
{#图文列表,类似于朋友圈,开始#}
<div class="row">
<div class="col-12 grid-margin stretch-card">
<div class="card">
<div class="card-body">
<h4 class="card-title">最近更新</h4>
<div class="d-flex">
<div class="d-flex align-items-center me-4 text-muted font-weight-light">
<i class="mdi mdi-account-outline icon-sm me-2"></i>
<span>张三</span>
</div>
<div class="d-flex align-items-center text-muted font-weight-light">
<i class="mdi mdi-clock icon-sm me-2"></i>
<span>2022年09月18日</span>
</div>
</div>
<div class="row mt-3">
<div class="col-6 pe-1">
<img src="{% static 'images/dashboard/img_1.jpg' %}"
class="mb-2 mw-100 w-100 rounded"
alt="image">
<img src="{% static 'images/dashboard/img_4.jpg' %}"
class="mw-100 w-100 rounded"
alt="image">
</div>
<div class="col-6 ps-1">
<img src="{% static 'images/dashboard/img_2.jpg' %}"
class="mb-2 mw-100 w-100 rounded"
alt="image">
<img src="{% static 'images/dashboard/img_3.jpg' %}"
class="mw-100 w-100 rounded"
alt="image">
</div>
</div>
<div class="d-flex mt-5 align-items-top">
<img src="{% static 'images/faces/face3.jpg' %}" class="img-sm rounded-circle me-3"
alt="image">
<div class="mb-0 flex-grow">
<h5 class="me-2 mb-2">学校网站-认证模块。</h5>
<p class="mb-0 font-weight-light">
一个页面的可读内容会分散读者的注意力,这是一个长期存在的事实。</p>
</div>
<div class="ms-auto">
<i class="mdi mdi-heart-outline text-muted"></i>
</div>
</div>
</div>
</div>
</div>
</div>
{#图文列表,类似于朋友圈,结束#}
{#进度表和待办事项开始#}
<div class="row">
<div class="col-md-7 grid-margin stretch-card">
<div class="card">
<div class="card-body">
<h4 class="card-title">项目进度表</h4>
<div class="table-responsive">
<table class="table">
<thead>
<tr>
<th>#</th>
<th>项目名</th>
<th>开始时间</th>
<th>进度</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>Django后台管理系统</td>
<td>2022年10月1日</td>
<td>
<div class="progress">
<div class="progress-bar bg-gradient-success" role="progressbar"
style="width: 25%" aria-valuenow="25" aria-valuemin="0"
aria-valuemax="100"></div>
</div>
</td>
</tr>
<tr>
<td> 2</td>
<td>Django后台管理系统</td>
<td>2022年10月1日</td>
<td>
<div class="progress">
<div class="progress-bar bg-gradient-danger" role="progressbar"
style="width: 75%" aria-valuenow="75" aria-valuemin="0"
aria-valuemax="100"></div>
</div>
</td>
</tr>
<tr>
<td> 3</td>
<td>Django后台管理系统</td>
<td>2022年10月1日</td>
<td>
<div class="progress">
<div class="progress-bar bg-gradient-warning" role="progressbar"
style="width: 90%" aria-valuenow="90" aria-valuemin="0"
aria-valuemax="100"></div>
</div>
</td>
</tr>
<tr>
<td> 4</td>
<td>Django后台管理系统</td>
<td>2022年10月1日</td>
<td>
<div class="progress">
<div class="progress-bar bg-gradient-primary" role="progressbar"
style="width: 50%" aria-valuenow="50" aria-valuemin="0"
aria-valuemax="100"></div>
</div>
</td>
</tr>
<tr>
<td> 5</td>
<td>Django后台管理系统</td>
<td>2022年10月1日</td>
<td>
<div class="progress">
<div class="progress-bar bg-gradient-danger" role="progressbar"
style="width: 35%" aria-valuenow="35" aria-valuemin="0"
aria-valuemax="100"></div>
</div>
</td>
</tr>
<tr>
<td> 5</td>
<td>Django后台管理系统</td>
<td>2022年10月1日</td>
<td>
<div class="progress">
<div class="progress-bar bg-gradient-info" role="progressbar"
style="width: 65%" aria-valuenow="65" aria-valuemin="0"
aria-valuemax="100"></div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
{#代办事项#}
<div class="col-md-5 grid-margin stretch-card">
<div class="card">
<div class="card-body">
<h4 class="card-title text-white">待办事项</h4>
{#输入框#}
<div class="add-items d-flex">
<input type="text" class="form-control todo-list-input"
placeholder="请输入计划任务名称">
<button
class="add btn btn-gradient-primary font-weight-bold todo-list-add-btn"
id="add-task"
>
添加
</button>
</div>
{#代办事项列表#}
<div class="list-wrapper">
<ul class="d-flex flex-column-reverse todo-list todo-list-custom">
<li>
<div class="form-check">
<label class="form-check-label">
<input class="checkbox" type="checkbox"> 项目研发会 </label>
</div>
<i class="remove mdi mdi-close-circle-outline"></i>
</li>
<li class="completed">
<div class="form-check">
<label class="form-check-label">
<input class="checkbox" type="checkbox" checked> 编写Engine代码
</label>
</div>
<i class="remove mdi mdi-close-circle-outline"></i>
</li>
<li>
<div class="form-check">
<label class="form-check-label">
<input class="checkbox" type="checkbox"> 修改Bug </label>
</div>
<i class="remove mdi mdi-close-circle-outline"></i>
</li>
<li>
<div class="form-check">
<label class="form-check-label">
<input class="checkbox" type="checkbox"> 项目功能测试 </label>
</div>
<i class="remove mdi mdi-close-circle-outline"></i>
</li>
<li class="completed">
<div class="form-check">
<label class="form-check-label">
<input class="checkbox" type="checkbox" checked> 项目核心业务文档编写
</label>
</div>
<i class="remove mdi mdi-close-circle-outline"></i>
</li>
<li>
<div class="form-check">
<label class="form-check-label">
<input class="checkbox" type="checkbox"> 深度调研ES的用法
</label>
</div>
<i class="remove mdi mdi-close-circle-outline"></i>
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
{#进度表和待办事项结束#}
</div>
{#底部开始#}
{% include "layout/footer.html" %}
{#底部结束#}
</div>
{#内容结束#}
</div>
</div>
{#脚本开始#}
{% include "layout/js.html" %}
{#脚本结束#}
</body>
</html>
表格页面
{% load static %}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<title>大鹏商城后台管理系统</title>
{% include "../../layout/css.html" %}
</head>
<body>
<div class="container-scroller">
{% include "../../layout/top_nav.html" %}
<div class="container-fluid page-body-wrapper">
{% include "../../layout/left_nav.html" %}
<div class="main-panel">
<div class="content-wrapper">
<div class="page-header">
<h3 class="page-title"> Basic Tables </h3>
<nav aria-label="breadcrumb">
<ol class="breadcrumb">
<li class="breadcrumb-item"><a href="#">Tables</a></li>
<li class="breadcrumb-item active" aria-current="page">Basic tables</li>
</ol>
</nav>
</div>
<div class="row">
<div class="col-lg-6 grid-margin stretch-card">
<div class="card">
<div class="card-body">
<h4 class="card-title">Basic Table</h4>
<p class="card-description"> Add class <code>.table</code>
</p>
<table class="table">
<thead>
<tr>
<th>Profile</th>
<th>VatNo.</th>
<th>Created</th>
<th>Status</th>
</tr>
</thead>
<tbody>
<tr>
<td>Jacob</td>
<td>53275531</td>
<td>12 May 2017</td>
<td><label class="badge badge-danger">Pending</label></td>
</tr>
<tr>
<td>Messsy</td>
<td>53275532</td>
<td>15 May 2017</td>
<td><label class="badge badge-warning">In progress</label></td>
</tr>
<tr>
<td>John</td>
<td>53275533</td>
<td>14 May 2017</td>
<td><label class="badge badge-info">Fixed</label></td>
</tr>
<tr>
<td>Peter</td>
<td>53275534</td>
<td>16 May 2017</td>
<td><label class="badge badge-success">Completed</label></td>
</tr>
<tr>
<td>Dave</td>
<td>53275535</td>
<td>20 May 2017</td>
<td><label class="badge badge-warning">In progress</label></td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<div class="col-lg-6 grid-margin stretch-card">
<div class="card">
<div class="card-body">
<h4 class="card-title">Hoverable Table</h4>
<p class="card-description"> Add class <code>.table-hover</code>
</p>
<table class="table table-hover">
<thead>
<tr>
<th>User</th>
<th>Product</th>
<th>Sale</th>
<th>Status</th>
</tr>
</thead>
<tbody>
<tr>
<td>Jacob</td>
<td>Photoshop</td>
<td class="text-danger"> 28.76% <i class="mdi mdi-arrow-down"></i></td>
<td><label class="badge badge-danger">Pending</label></td>
</tr>
<tr>
<td>Messsy</td>
<td>Flash</td>
<td class="text-danger"> 21.06% <i class="mdi mdi-arrow-down"></i></td>
<td><label class="badge badge-warning">In progress</label></td>
</tr>
<tr>
<td>John</td>
<td>Premier</td>
<td class="text-danger"> 35.00% <i class="mdi mdi-arrow-down"></i></td>
<td><label class="badge badge-info">Fixed</label></td>
</tr>
<tr>
<td>Peter</td>
<td>After effects</td>
<td class="text-success"> 82.00% <i class="mdi mdi-arrow-up"></i></td>
<td><label class="badge badge-success">Completed</label></td>
</tr>
<tr>
<td>Dave</td>
<td>53275535</td>
<td class="text-success"> 98.05% <i class="mdi mdi-arrow-up"></i></td>
<td><label class="badge badge-warning">In progress</label></td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<div class="col-lg-12 grid-margin stretch-card">
<div class="card">
<div class="card-body">
<h4 class="card-title">Striped Table</h4>
<p class="card-description"> Add class <code>.table-striped</code>
</p>
<table class="table table-striped">
<thead>
<tr>
<th> User</th>
<th> First name</th>
<th> Progress</th>
<th> Amount</th>
<th> Deadline</th>
</tr>
</thead>
<tbody>
<tr>
<td class="py-1">
<img src="{% static 'images/faces-clipart/pic-1.png' %}" alt="image"/>
</td>
<td> Herman Beck</td>
<td>
<div class="progress">
<div class="progress-bar bg-success" role="progressbar"
style="width: 25%" aria-valuenow="25" aria-valuemin="0"
aria-valuemax="100"></div>
</div>
</td>
<td> $ 77.99</td>
<td> May 15, 2015</td>
</tr>
<tr>
<td class="py-1">
<img src="{% static 'images/faces-clipart/pic-2.png' %}" alt="image"/>
</td>
<td> Messsy Adam</td>
<td>
<div class="progress">
<div class="progress-bar bg-danger" role="progressbar"
style="width: 75%" aria-valuenow="75" aria-valuemin="0"
aria-valuemax="100"></div>
</div>
</td>
<td> $245.30</td>
<td> July 1, 2015</td>
</tr>
<tr>
<td class="py-1">
<img src="{% static 'images/faces-clipart/pic-3.png' %}" alt="image"/>
</td>
<td> John Richards</td>
<td>
<div class="progress">
<div class="progress-bar bg-warning" role="progressbar"
style="width: 90%" aria-valuenow="90" aria-valuemin="0"
aria-valuemax="100"></div>
</div>
</td>
<td> $138.00</td>
<td> Apr 12, 2015</td>
</tr>
<tr>
<td class="py-1">
<img src="{% static 'images/faces-clipart/pic-4.png' %}" alt="image"/>
</td>
<td> Peter Meggik</td>
<td>
<div class="progress">
<div class="progress-bar bg-primary" role="progressbar"
style="width: 50%" aria-valuenow="50" aria-valuemin="0"
aria-valuemax="100"></div>
</div>
</td>
<td> $ 77.99</td>
<td> May 15, 2015</td>
</tr>
<tr>
<td class="py-1">
<img src="{% static 'images/faces-clipart/pic-1.png' %}" alt="image"/>
</td>
<td> Edward</td>
<td>
<div class="progress">
<div class="progress-bar bg-danger" role="progressbar"
style="width: 35%" aria-valuenow="35" aria-valuemin="0"
aria-valuemax="100"></div>
</div>
</td>
<td> $ 160.25</td>
<td> May 03, 2015</td>
</tr>
<tr>
<td class="py-1">
<img src="{% static 'images/faces-clipart/pic-2.png' %}" alt="image"/>
</td>
<td> John Doe</td>
<td>
<div class="progress">
<div class="progress-bar bg-info" role="progressbar" style="width: 65%"
aria-valuenow="65" aria-valuemin="0" aria-valuemax="100"></div>
</div>
</td>
<td> $ 123.21</td>
<td> April 05, 2015</td>
</tr>
<tr>
<td class="py-1">
<img src="{% static 'images/faces-clipart/pic-3.png' %}" alt="image"/>
</td>
<td> Henry Tom</td>
<td>
<div class="progress">
<div class="progress-bar bg-warning" role="progressbar"
style="width: 20%" aria-valuenow="20" aria-valuemin="0"
aria-valuemax="100"></div>
</div>
</td>
<td> $ 150.00</td>
<td> June 16, 2015</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<div class="col-lg-12 grid-margin stretch-card">
<div class="card">
<div class="card-body">
<h4 class="card-title">Bordered table</h4>
<p class="card-description"> Add class <code>.table-bordered</code>
</p>
<table class="table table-bordered">
<thead>
<tr>
<th> #</th>
<th> First name</th>
<th> Progress</th>
<th> Amount</th>
<th> Deadline</th>
</tr>
</thead>
<tbody>
<tr>
<td> 1</td>
<td> Herman Beck</td>
<td>
<div class="progress">
<div class="progress-bar bg-success" role="progressbar"
style="width: 25%" aria-valuenow="25" aria-valuemin="0"
aria-valuemax="100"></div>
</div>
</td>
<td> $ 77.99</td>
<td> May 15, 2015</td>
</tr>
<tr>
<td> 2</td>
<td> Messsy Adam</td>
<td>
<div class="progress">
<div class="progress-bar bg-danger" role="progressbar"
style="width: 75%" aria-valuenow="75" aria-valuemin="0"
aria-valuemax="100"></div>
</div>
</td>
<td> $245.30</td>
<td> July 1, 2015</td>
</tr>
<tr>
<td> 3</td>
<td> John Richards</td>
<td>
<div class="progress">
<div class="progress-bar bg-warning" role="progressbar"
style="width: 90%" aria-valuenow="90" aria-valuemin="0"
aria-valuemax="100"></div>
</div>
</td>
<td> $138.00</td>
<td> Apr 12, 2015</td>
</tr>
<tr>
<td> 4</td>
<td> Peter Meggik</td>
<td>
<div class="progress">
<div class="progress-bar bg-primary" role="progressbar"
style="width: 50%" aria-valuenow="50" aria-valuemin="0"
aria-valuemax="100"></div>
</div>
</td>
<td> $ 77.99</td>
<td> May 15, 2015</td>
</tr>
<tr>
<td> 5</td>
<td> Edward</td>
<td>
<div class="progress">
<div class="progress-bar bg-danger" role="progressbar"
style="width: 35%" aria-valuenow="35" aria-valuemin="0"
aria-valuemax="100"></div>
</div>
</td>
<td> $ 160.25</td>
<td> May 03, 2015</td>
</tr>
<tr>
<td> 6</td>
<td> John Doe</td>
<td>
<div class="progress">
<div class="progress-bar bg-info" role="progressbar" style="width: 65%"
aria-valuenow="65" aria-valuemin="0" aria-valuemax="100"></div>
</div>
</td>
<td> $ 123.21</td>
<td> April 05, 2015</td>
</tr>
<tr>
<td> 7</td>
<td> Henry Tom</td>
<td>
<div class="progress">
<div class="progress-bar bg-warning" role="progressbar"
style="width: 20%" aria-valuenow="20" aria-valuemin="0"
aria-valuemax="100"></div>
</div>
</td>
<td> $ 150.00</td>
<td> June 16, 2015</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<div class="col-lg-12 grid-margin stretch-card">
<div class="card">
<div class="card-body">
<h4 class="card-title">Inverse table</h4>
<p class="card-description"> Add class <code>.table-dark</code>
</p>
<table class="table table-dark">
<thead>
<tr>
<th> #</th>
<th> First name</th>
<th> Amount</th>
<th> Deadline</th>
</tr>
</thead>
<tbody>
<tr>
<td> 1</td>
<td> Herman Beck</td>
<td> $ 77.99</td>
<td> May 15, 2015</td>
</tr>
<tr>
<td> 2</td>
<td> Messsy Adam</td>
<td> $245.30</td>
<td> July 1, 2015</td>
</tr>
<tr>
<td> 3</td>
<td> John Richards</td>
<td> $138.00</td>
<td> Apr 12, 2015</td>
</tr>
<tr>
<td> 4</td>
<td> Peter Meggik</td>
<td> $ 77.99</td>
<td> May 15, 2015</td>
</tr>
<tr>
<td> 5</td>
<td> Edward</td>
<td> $ 160.25</td>
<td> May 03, 2015</td>
</tr>
<tr>
<td> 6</td>
<td> John Doe</td>
<td> $ 123.21</td>
<td> April 05, 2015</td>
</tr>
<tr>
<td> 7</td>
<td> Henry Tom</td>
<td> $ 150.00</td>
<td> June 16, 2015</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<div class="col-lg-12 stretch-card">
<div class="card">
<div class="card-body">
<h4 class="card-title">Table with contextual classes</h4>
<p class="card-description"> Add class <code>.table-{color}</code>
</p>
<table class="table table-bordered">
<thead>
<tr>
<th> #</th>
<th> First name</th>
<th> Product</th>
<th> Amount</th>
<th> Deadline</th>
</tr>
</thead>
<tbody>
<tr class="table-info">
<td> 1</td>
<td> Herman Beck</td>
<td> Photoshop</td>
<td> $ 77.99</td>
<td> May 15, 2015</td>
</tr>
<tr class="table-warning">
<td> 2</td>
<td> Messsy Adam</td>
<td> Flash</td>
<td> $245.30</td>
<td> July 1, 2015</td>
</tr>
<tr class="table-danger">
<td> 3</td>
<td> John Richards</td>
<td> Premeire</td>
<td> $138.00</td>
<td> Apr 12, 2015</td>
</tr>
<tr class="table-success">
<td> 4</td>
<td> Peter Meggik</td>
<td> After effects</td>
<td> $ 77.99</td>
<td> May 15, 2015</td>
</tr>
<tr class="table-primary">
<td> 5</td>
<td> Edward</td>
<td> Illustrator</td>
<td> $ 160.25</td>
<td> May 03, 2015</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
{% include "../../layout/footer.html" %}
</div>
</div>
</div>
{% include "../../layout/js.html" %}
</body>
</html>
图表页面
{% load static %}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<title>大鹏商城后台管理系统</title>
{% include "../../layout/css.html" %}
</head>
<body>
<div class="container-scroller">
{% include "../../layout/top_nav.html" %}
<div class="container-fluid page-body-wrapper">
{% include "../../layout/left_nav.html" %}
<div class="main-panel">
<div class="content-wrapper">
<div class="page-header">
<h3 class="page-title"> Chart-js </h3>
<nav aria-label="breadcrumb">
<ol class="breadcrumb">
<li class="breadcrumb-item"><a href="#">Charts</a></li>
<li class="breadcrumb-item active" aria-current="page">Chart-js</li>
</ol>
</nav>
</div>
<div class="row">
<div class="col-lg-6 grid-margin stretch-card">
<div class="card">
<div class="card-body">
<h4 class="card-title">Line chart</h4>
<canvas id="lineChart" style="height:250px"></canvas>
</div>
</div>
</div>
<div class="col-lg-6 grid-margin stretch-card">
<div class="card">
<div class="card-body">
<h4 class="card-title">Bar chart</h4>
<canvas id="barChart" style="height:230px"></canvas>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-lg-6 grid-margin stretch-card">
<div class="card">
<div class="card-body">
<h4 class="card-title">Area chart</h4>
<canvas id="areaChart" style="height:250px"></canvas>
</div>
</div>
</div>
<div class="col-lg-6 grid-margin stretch-card">
<div class="card">
<div class="card-body">
<h4 class="card-title">Doughnut chart</h4>
<canvas id="doughnutChart" style="height:250px"></canvas>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-lg-6 grid-margin stretch-card">
<div class="card">
<div class="card-body">
<h4 class="card-title">Pie chart</h4>
<canvas id="pieChart" style="height:250px"></canvas>
</div>
</div>
</div>
<div class="col-lg-6 grid-margin stretch-card">
<div class="card">
<div class="card-body">
<h4 class="card-title">Scatter chart</h4>
<canvas id="scatterChart" style="height:250px"></canvas>
</div>
</div>
</div>
</div>
</div>
{% include "../../layout/footer.html" %}
</div>
</div>
</div>
{% include "../../layout/js.html" %}
<script src="{% static 'js/chart.js' %}"></script>
</body>
</html>
结语
关注我不迷路,欢迎关注我的微信公众号”张大鹏520″,如果您对此文章感兴趣,欢迎点赞收藏,留言评论。
文中所有代码,只需要打赏20元,然后留言评论“已打赏”,即可获取哦。
本文的PDF电子书版,只需要打赏3元,然后留言评论“已打赏”,即可获取哦。
写文章不容易,不喜勿喷哈,如果有想要学编程,学项目,或者在工作中有项目难以单独完成需要提供帮助的同学,欢迎私信我哈。生活不易,想要利用学到的编程知识,业余赚点零花钱。
接项目:网站开发,APP开发,各种管理系统开发。
带徒弟:Python编程教学,Golang编程教学,前端编程教学。
谢谢您!!!
原文始发于微信公众号(张大鹏520):Django加Vue电商项目实战16 准备管理系统模板
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/48574.html