IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> Django实战开发项目之点餐系统第三章 -> 正文阅读

[Python知识库]Django实战开发项目之点餐系统第三章

Django实战开发项目之点餐系统第三章

后台管理系统的增删改查功能的实现

1、myadmin/models.py中user类对应上一章中的osdb数据库里面的user表字段

from django.db import models
from datetime import datetime
# Create your models here.

class user(models.Model):
    username = models.CharField(max_length=50)
    nickname = models.CharField(max_length=50)
    password_hash = models.CharField(max_length=100)
    password_salt = models.CharField(max_length=50)
    status = models.IntegerField(default=1)
    create_at = models.DateField(default=datetime.now)
    uodate_at = models.DateField(default=datetime.now)

    class Meta:
        db_table = 'user'

2、员工信息分页显示
一、myadmin/views/myadmin_users.py

from django.shortcuts import render
from myadmin.models import user
from django.http import HttpResponse
from django.core.paginator import Paginator
# Create your views here.
# 加载后台员工管理首页
def myadmin_users_index(request,Pindex):
    try:
        ulist = user.objects.all()
        PageUsers = Paginator(ulist,5) #(实例化对象)5个数据分一页
        Pagenum = PageUsers.num_pages #最大页数
        PageRange = PageUsers.page_range #页数范围
        if Pindex < 1:
            Pindex = 1
        elif Pindex > Pagenum:
            Pindex = Pagenum
        PageContext = PageUsers.page(Pindex) #每页的内容
        context = {"users":PageContext,"Pindex":Pindex,"PageRange":PageRange}
        return render(request,"myadmin/user/myadmin_users_index.html",context)
    except Exception as err:
        print(err)
        return HttpResponse("无员工数据")

# 加载后台员工添加
def myadmin_users_add(request):
    pass
# 执行添加后台员工
def myadmin_users_insert(request):
    pass
# 删除后台员工页面
def myadmin_users_delete(request):
    pass
# 加载后台员工编辑
def myadmin_users_exdit(request):
    pass
# 执行后台员工编辑
def myadmin_users_update(request):
    pass

二、templates/myadmin/user/myadmin_users_index.html

{% extends 'myadmin/base.html' %}
{% block main_content %}
<section class="content-header">
    <h1>
      员工管理
      <small>订餐系统后台管理</small>
    </h1>
    <ol class="breadcrumb">
      <li><a href="#"><i class="fa fa-dashboard"></i> 首页</a></li>
      <li class="active">员工管理</li>
    </ol>
  </section>

  <!-- Main content -->
  <section class="content container-fluid">

    <div class="row">
      <div class="col-xs-12">
        <div class="box">
          <div class="box-header">
            <h3 class="box-title">员工信息表</h3>

            <div class="box-tools">
              <div class="input-group input-group-sm" style="width: 150px;">
                <input type="text" name="table_search" class="form-control pull-right" placeholder="Search">

                <div class="input-group-btn">
                  <button type="submit" class="btn btn-default"><i class="fa fa-search"></i></button>
                </div>
              </div>
            </div>
          </div>
          <!-- /.box-header -->
          <div class="box-body table-responsive no-padding">
            <table class="table table-hover">
              <tr>
                <th>ID</th>
                <th>账号</th>
                <th>昵称</th>
                <th>当前状态</th>
                <th>添加时间</th>
                <th>修改时间</th>
                <th width="200">操作</th>
              </tr>
              {% for user in users %}
                <tr>
                <td>{{user.id}}</td>
                <td>{{user.username}}</td>
                <td>{{user.nickname}}</td>
                <td><span class="label label-success">正常</span></td>
                <td>{{user.create_at}}</td>
                <td>{{user.update_at}}</td>
                <td>
                  <button type="button" class="btn btn-success btn-xs">
                    <span class="glyphicon glyphicon-edit" aria-hidden="true"></span> 编辑</button>
                  <button type="button" class="btn btn-danger btn-xs">
                    <span class="glyphicon glyphicon-trash" aria-hidden="true"></span> 删除</button>
                  <button type="button" class="btn btn-warning btn-xs">
                    <span class="glyphicon glyphicon-search" aria-hidden="true"></span> 查看订单</button>
                </td>
                </tr>
              {% endfor %}
            </table>
          </div>
          <!-- /.box-body -->
          <div class="box-footer clearfix">
            <ul class="pagination pagination-sm no-margin pull-right">
              <li><a href="{% url 'myadmin_users_index' Pindex|add:-1 %}">&laquo;</a></li>
              {% for Page in PageRange %}
                <li><a href="{% url 'myadmin_users_index' Page %}">{{Page}}</a></li>
              {% endfor %}
              <li><a href="{% url 'myadmin_users_index' Pindex|add:1 %}">&raquo;</a></li>
            </ul>
          </div>
        </div>
        <!-- /.box -->
      </div>
    </div>

  </section>
{% endblock %}

三、重新刷新网页,并点击下图
在这里插入图片描述
会系统发现报错
在这里插入图片描述
这是由于父模板里面的超链接没设置好的原因,因为我们的路径没问题,所以请对父模板base.html做以下修改:
在这里插入图片描述

<li><a href="{% url 'myadmin_users_index' 1 %}"><i class="fa fa-users"></i> <span>员工管理</span></a></li>

四、再次刷新网页并点击员工管理,分页显示成功
在这里插入图片描述

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2021-10-01 16:48:38  更:2021-10-01 16:49:09 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 17:44:58-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码