Django搭建后台管理系统

发布时间:2023-11-02 14:30

        一个完整的微Web应用软件基本都会有一关管理员管理应用数据的后台管理系统,我们可以通过针对这个管理系统做出一系列的功能,比如菜单,选项,侧边栏,链接等进行数据的管理,也可以网站中的用户数据之类进行维护与更新。

后台管理系统的基本操作

        Django配合python的使用可以说是非常友好帮助我们搭建后台管理,包括良好的展示界面。

打开Django的配置文件,这里写入我们的项目应用名称-----smanage

\"Django搭建后台管理系统_第1张图片\"

本次总结就是通过django.contrib.admin添加到所创建的Django项目中,并且可以通过django.contrib.auth模块完成用户的认证处理,使用djang.contrib.sessions模块来实现状态保持的操作

setting文件配置时,我们可以先将我们的网站展示为中文

\"\"

接着打开创建smanage项目,对该项目应用的models.py文件进行数据模型操作

from django.db import models


# Create your models here.

class Classes(models.Model):
    classname = models.CharField(max_length=30, verbose_name=\'班级号\')
    class_price = models.IntegerField(verbose_name=\'班费\')
    classroom = models.IntegerField(verbose_name=\'教室号\')

    class Meta:
        # db_table = \'class\'
        verbose_name_plural = verbose_name = \'班级表\'


class Student(models.Model):
    name = models.CharField(max_length=20, verbose_name=\'姓名\')
    age = models.IntegerField(verbose_name=\'年龄\')
    classes = models.ForeignKey(Classes, on_delete=models.CASCADE, verbose_name=\'班级号\')
    phone = models.IntegerField(verbose_name=\'电话\')
    image = models.ImageField(upload_to=\'staic/\', default=\'staic/8.png\', verbose_name=\'头像\')

    class Meta:
        verbose_name_plural = verbose_name = \'学生表\'

    def __str__(self):
        return self.name

这里我写的是主表与从表的关系,用到了Foreign

这里的verbose_name就是起别名的意思,并且Classes这个类使用了一个ImageField的属性,它是 用来存入图片做头像之类,括号里的upload_to选项是必填项,使用相对路径,default选项就是如果没有存入图片,系统将选择默认图片进行存入。

\"\"

生成迁移文件的两步骤

在终端进行输入  python manage.py makemigrations  和  python manage.py migrate 按顺序 

下一步再对我们的apps.py文件和admin.py文件进行操作

\"Django搭建后台管理系统_第2张图片\"

 在这里对我们的后台系统显示出来,这SmanageConfig类继承了AppConfig,这里用到了default_auto_field,就是ID字段自增,用verbose_name命名为学生管理系统

from django.contrib import admin

# Register your models here.
from .models import Classes, Student


@admin.register(Student)
class StudentAdmin(admin.ModelAdmin):
    list_display = (\'name\', \'age\', \'phone\', \'image\', \'classes_id\')


@admin.register(Classes)
class ClassesAdmin(admin.ModelAdmin):
    list_display = (\'classname\', \'class_price\', \'classroom\')  # 展示
    list_editable = (\'class_price\', \'classroom\')  # 负责修改
    list_filter = (\'classname\',)
    list_per_page = 4  # 分页
    ordering = [\'-classroom\', \'classname\']  # 优先级排序

 首先我们要先进行注册用户到数据库,并且给该用户设置有权限访问admin界面,并且可以管理这个数据模型

\"Django搭建后台管理系统_第3张图片\"

这里用到了装饰器进行注册了Student和Classes,并将它们封装成了类

在admin.py文件我们主要对字段的操作,展示,添加,修改,删除等基本操作

\"Django搭建后台管理系统_第4张图片\"

list_display:数据的展示、list_editable:数据的修改

list_filter:条件过滤\"Django搭建后台管理系统_第5张图片\"进行一个筛选功能

list_per_page:分页功能\"Django搭建后台管理系统_第6张图片\"

 ordering:优先级排序

本次总结到这里结束

ItVuer - 免责声明 - 关于我们 - 联系我们

本网站信息来源于互联网,如有侵权请联系:561261067@qq.com

桂ICP备16001015号