03 django管理系统 - 部门管理 - 部门列表

部门管理

首先我们需要在models里定义Dept类

python 复制代码
# 创建部门表
class Dept(models.Model):
    name = models.CharField(max_length=100)
    head = models.CharField(max_length=100)
    phone = models.CharField(max_length=15)
    email = models.EmailField()
    address = models.CharField(max_length=255)

    def __str__(self):
        return self.name

然后执行下面两句,创建数据表

manage.py@MS > makemigrations

manage.py@MS > migrate

部门列表展示

首先创建视图

python 复制代码
from django.shortcuts import render

"""部门列表"""
def dept_list(request):
    return render(request, 'dept_list.html')

然后配置URL路由

python 复制代码
urlpatterns = [
    # 部门管理
    path("dept/list/", dept.dept_list),
]

接着创建部门列表页面dept_list.html,继承base.html

python 复制代码
{% extends 'base.html' %}

{% block content %}
    
{% endblock %}

看一下效果,是可以访问的。

去bootstrap找个带表格的面板,加进去

html 复制代码
{% extends 'base.html' %}

{% block content %}

    <div class="panel panel-default">
        <!-- Default panel contents -->
        <div class="panel-heading">新建部门</div>
        <div class="panel-body">
            <p>部门列表</p>
        </div>

        <!-- Table -->
        <table class="table">
            <thead>
            <tr>
                <th>#</th>
                <th>First Name</th>
                <th>Last Name</th>
                <th>Username</th>
            </tr>
            </thead>
            <tbody>
            <tr>
                <th scope="row">1</th>
                <td>Mark</td>
                <td>Otto</td>
                <td>@mdo</td>
            </tr>
            <tr>
                <th scope="row">2</th>
                <td>Jacob</td>
                <td>Thornton</td>
                <td>@fat</td>
            </tr>
            <tr>
                <th scope="row">3</th>
                <td>Larry</td>
                <td>the Bird</td>
                <td>@twitter</td>
            </tr>
            </tbody>
        </table>
    </div>

{% endblock %}

效果如下:

ok,接下来可以编写dept_list()函数

python 复制代码
"""
部门列表
department_id:部门ID(主键,自动增长)
name:部门名称
head:部门负责人
phone:联系电话
email:电子邮件
address:地址
"""


def dept_list(request):
    # 查询部门列表数据
    queryset = models.Dept.objects.using('default').all()
    # 把查询到的数据传递到前端
    context = {
        'queryset': queryset
    }
    return render(request, 'dept_list.html', context)

然后在dept_list.html上接收数据

html 复制代码
{% extends 'base.html' %}

{% block content %}

    <div class="panel panel-default">
        <!-- Default panel contents -->
        <div class="panel-heading">新建部门</div>
        <div class="panel-body">
            <p>部门列表</p>
        </div>

        <!-- Table -->
        <table class="table">
            <thead>
            <tr>
                <th>ID</th>
                <th>name</th>
                <th>head</th>
                <th>phone</th>
                <th>email</th>
                <th>address</th>
            </tr>
            </thead>
            <tbody>
            {% for obj in queryset %}
                <tr>
                    <td>{{ obj.id }}</td>
                    <td>{{ obj.name }}</td>
                    <td>{{ obj.head }}</td>
                    <td>{{ obj.phone }}</td>
                    <td>{{ obj.email }}</td>
                    <td>{{ obj.address }}</td>
                </tr>
            {% endfor %}
            </tbody>
        </table>
    </div>

{% endblock %}

效果如下:

相关推荐
q5673152314 分钟前
Python 中的字符串匹配算法
android·java·javascript·python·算法
hummhumm28 分钟前
Oracle 第20章:数据库调优
java·数据库·后端·python·mysql·oracle·database
零七点0733 分钟前
Django遍历文件夹及文件
后端·python·django
墨城烟柳Q39 分钟前
python爬取m3u8视频(思路到实现全讲解!!!)
爬虫·python·网络爬虫
2402_857583491 小时前
知识管理新维度:Spring Boot多分类系统
java·spring boot·后端
阿亨仔1 小时前
Pytorch猴痘病识别
人工智能·pytorch·python·深度学习·算法·机器学习
大油头儿1 小时前
Python 实现链表:详解与应用
python·链表
2401_858120531 小时前
SpringBoot健身房管理:功能与优势分析
java·spring boot·后端
nervermore9901 小时前
2.2 python数据库-mysql
python
爱上语文1 小时前
苍穹外卖 商家取消、派送、完成订单
java·开发语言·spring boot·后端