首页 > 其他分享 >管理员管理

管理员管理

时间:2023-10-19 11:59:16浏览次数:25  
标签:管理 admin list queryset html 管理员 page

创建数据库表

models.py

class Admin(models.Model):
    """管理员表"""
    username = models.CharField(verbose_name="用户名", max_length=32)
    password = models.CharField(verbose_name="密码", max_length=64)
在数据库生成
Tools->run manage.py task
执行命令
makemigrations
migrate

  

 数据库中插入一条数据

 insert into  app01_admin(username,password) values("coco", "123");

  

 

增加管理员菜单

修改/app01/templates/layout.html

<ul class="nav navbar-nav">
<li><a href="/admin/list/">管理员账户管理</a></li>
<li><a href="/depart/list/">部门管理</a></li>
<li><a href="/user/list/">用户管理</a></li>
<li><a href="/prettynum/list/">靓号管理</a></li>
</ul>

  

 在views文件夹下新建admin.py,用于存放管理账户管理的视图函数

修改urls.py

#导入admin
from app01.views import depart, pretty, user, admin
#添加url
urlpatterns = [
    #管理员账户管理
    path('admin/list/', admin.admin_list),
]

 

 admin.py

from django.shortcuts import render
from app01 import models

def admin_list(request):
"""管理员列表"""
queryset = models.Admin.objects.all()

context = {
'queryset' : queryset
}
return render(request, 'admin_list.html', context)

 在templates文件夹创建admin_list.html

{% extends 'layout.html' %}

{% block content %}
    <div class="container">
        <div style="margin-bottom: 10px" class="clearfix">
            <a class="btn btn-success" href="#">
                <span class="glyphicon glyphicon-plus-sign" aria-hidden="true"></span>
                新建管理员
            </a>
            <div style="float: right; width: 300px;">
                <form>
                    <div class="input-group">
                        <input type="text" name="q" class="form-control" placeholder="Search for..."
                               value="{{ search_data }}">
                        <span class="input-group-btn">
                            <button class="btn btn-default" type="submit">
                                <span class="glyphicon glyphicon-search" aria-hidden="true"></span>
                            </button>
                        </span>
                    </div><!-- /input-group -->
                </form>
            </div>
        </div>
        <div class="panel panel-default">
            <!-- Default panel contents -->
            <div class="panel-heading">
                <span class="glyphicon glyphicon-th-list" aria-hidden="true"></span>
                管理员列表
            </div>

            <!-- Table -->
            <table class="table table-bordered">
                <thead>
                <tr>
                    <th>ID</th>
                    <th>用户名</th>
                    <th>密码</th>
                    <th>操作</th>
                </tr>
                </thead>
                <tbody>
                {% for obj in queryset %}
                    <tr>
                        <th>{{ obj.id }}</th>
                        <td>{{ obj.username }}</td>
                        <td>************</td>
                        <td>
                            <a class="btn btn-primary btn-xs" href="#">编辑</a>
                            <a class="btn btn-danger btn-xs" href="#">删除</a>
                        </td>
                    </tr>
                {% endfor %}
                </tbody>
            </table>
        </div>
    </div>
{% endblock %}

  管理员列表就可以在前端展示出来了

 管理员列表添加分页

admin.py

from django.shortcuts import render

from app01 import models
from app01.utils.pagination import Pagination

def admin_list(request):
    """管理员列表"""
    queryset = models.Admin.objects.all()

    page_object = Pagination(request, queryset)
    context = {
        'queryset' : page_object.page_queryset,
        'page_string': page_object.html()
    }
    return render(request, 'admin_list.html', context)

  

 admin_list.html

{% extends 'layout.html' %}

{% block content %}
    <div class="container">
        <div style="margin-bottom: 10px" class="clearfix">
            <a class="btn btn-success" href="#">
                <span class="glyphicon glyphicon-plus-sign" aria-hidden="true"></span>
                新建管理员
            </a>
            <div style="float: right; width: 300px;">
                <form>
                    <div class="input-group">
                        <input type="text" name="q" class="form-control" placeholder="Search for..."
                               value="{{ search_data }}">
                        <span class="input-group-btn">
                            <button class="btn btn-default" type="submit">
                                <span class="glyphicon glyphicon-search" aria-hidden="true"></span>
                            </button>
                        </span>
                    </div><!-- /input-group -->
                </form>
            </div>
        </div>
        <div class="panel panel-default">
            <!-- Default panel contents -->
            <div class="panel-heading">
                <span class="glyphicon glyphicon-th-list" aria-hidden="true"></span>
                管理员列表
            </div>

            <!-- Table -->
            <table class="table table-bordered">
                <thead>
                <tr>
                    <th>ID</th>
                    <th>用户名</th>
                    <th>密码</th>
                    <th>操作</th>
                </tr>
                </thead>
                <tbody>
                {% for obj in queryset %}
                    <tr>
                        <th>{{ obj.id }}</th>
                        <td>{{ obj.username }}</td>
                        <td>************</td>
                        <td>
                            <a class="btn btn-primary btn-xs" href="#">编辑</a>
                            <a class="btn btn-danger btn-xs" href="#">删除</a>
                        </td>
                    </tr>
                {% endfor %}
                </tbody>
            </table>
        </div>
        <ul class="pagination">
            {{ page_string }}
        </ul>
    </div>
{% endblock %}

 完成

 添加搜索功能

admin.py

from django.shortcuts import render

from app01 import models
from app01.utils.pagination import Pagination

def admin_list(request):
    """管理员列表"""

    #构造搜索
    data_dict = {}
    search_data = request.GET.get('q', "")
    if search_data:
        data_dict[ "username__contains"] = search_data

    #根据搜索条件去数据库获取
    queryset = models.Admin.objects.filter(**data_dict)

    #分页
    page_object = Pagination(request, queryset)
    context = {
        'queryset' : page_object.page_queryset,
        'page_string': page_object.html(),
        "search_data": search_data,
    }
    return render(request, 'admin_list.html', context)

  

 

 admin_list.html

 

 

 

 

 



标签:管理,admin,list,queryset,html,管理员,page
From: https://www.cnblogs.com/kekeeleven/p/17774382.html

相关文章

  • 造轮子之设置管理
    前面我们基础设施基本搭建完毕,后面可以做一些稍微复杂点的功能了,接下来就来实现一个设置管理。设置管理一般用做一些系统设置之类的,如邮箱配置等,面向使用人员。而不需要修改我们的配置文件,修改配置文件的方式就偏向于技术人员了。话不多说,开造。设计结构设置管理中需要2个表,一......
  • 免费敏捷管理工具-Leangoo领歌
     Leangoo领歌是一款永久免费的专业的敏捷开发管理工具,提供端到端敏捷研发管理解决方案,涵盖敏捷需求管理、任务协同、进展跟踪、统计度量等。
Leangoo领歌上手快、实施成本低,可帮助企业快速落地敏捷,提质增效、缩短周期、加速创新。Leangoo领歌区别于传统项目管理软件,Leangoo基于......
  • 项目管理之5W2H项目定义法
    在项目管理中,为了确保项目的成功实施,项目团队需要全面了解项目的各个方面,并制定相应的计划和措施。为此,可以采用一种被称为5W2H的项目定义方法。这种方法可以帮助项目团队更好地了解项目的需求、干系人、实施地点、交付物、时间和成本等方面,从而为项目的成功实施打下良好的基础。下......
  • openGauss学习笔记-103 openGauss 数据库管理-管理数据库安全-客户端接入之SSL证书管
    openGauss学习笔记-103openGauss数据库管理-管理数据库安全-客户端接入之SSL证书管理-证书生成openGauss默认配置了通过openssl生成的安全证书、私钥。并且提供证书替换的接口,方便用户进行证书的替换。103.1操作场景在测试环境下,用户可以用通过以下方式进行数字证书测试。在......
  • 第3章 用户管理(一)
    Linux是一种多用户操作系统,提供了强大的用户管理功能。在Linux中,用户和组是管理系统资源和权限的基本单位。本文将为您介绍Linux用户/组的概念和相关操作,以帮助您更好地管理系统中的用户和组。1.用户/组概览1.1用户表示UID与GID每个用户在Linux系统中都有一个唯一的数字标识符,......
  • 钉钉圈子群用于实验室辅助管理
    其实前面一直用企业微信管理实验室的,疫情期间企业微信未认证的人数上限是500,也差不多够用了。上半年开始企业微信开始弹认证提醒了,提示人数不能超100,然后就发现很多新加的学生无法发送信息了,审批功能倒还是能用,就是不能聊天。微信群、freeflarum免费论坛、兔小巢、QQ频道,学生都没......
  • 【笔记】问题控制与管理&故障、问题、已知错误、变更请求之间的逻辑关系&问题管理流程
    【笔记】问题控制与管理&故障、问题、已知错误、变更请求之间的逻辑关系问题控制与管理与故障管理的尽可能快地恢复服多的目标不同,问题管理是要防止再次发生故障**例如你制作了一个报表,用户填写了问题数据进去,因此报错提示了,让用户换个数据或者和用户说不要这样填写的方法就算......
  • 企业IT部门管理者必备:CIO工作指南 P120
       本人从事咨询工作多年,二十年一线数字化规划咨询经验,提供制造业数智化转型规划服务,顶层规划/企业架构/数据治理/数据安全解决方案资料干货.   【智能制造数字化咨询】该PPT共120页,由于篇幅有限,以下为部分资料,如需完整原版 方案,点击关注下方。人们经常建议CIO将IT......
  • Linux 下安装 miniconda,管理 Python 多环境
    安装miniconda1、下载安装包Miniconda3-py37_22.11.1-1-Linux-x86_64.sh,或者自行选择版本2、把安装包上传到服务器上,这里放在/home/software3、安装bashMiniconda3-py37_22.11.1-1-Linux-x86_64.sh4、按回车WelcometoMiniconda3py37_22.11.1-1Inordertocontin......
  • 项目播报 | 璞华科技助力苏州巨迈科构建数字化管理体系
    项目播报近日,苏州巨迈科智能科技有限公司(以下简称:苏州巨迈科)签约璞华科技实施PLM项目,建立苏州巨迈科统一的研发管理平台,实现产品数据在部门间的共享,提升企业技术管理水平和综合竞争力,提高信息化管理水平。苏州巨迈科是集自动化设备和工业软件一体化的智能制造整体解决方案提供......