Python Web开发:Django后台管理系统

来自CloudWiki
跳转至: 导航搜索

网站的前台和后台

一个网站通常分为前台和后台两部分

前台主要为普通用户提供常规页面

后台由网站管理员负责网站数据的查看、添加、修改和删除

Django提供了现成高效的后台管理系统。

后台管理系统的启用

1)创建超级管理员

2)注册模型类

创建超级管理员

python manage.py createsuperuser

Username (leave blank to use 'maxin'): admin

Email address: maxin5452@qq.com

Password:

Password (again):

Superuser created successfully.

注:如果出现如下字词,说明密码设置不成功,需重新设置:

This password is too short. It must contain at least 8 characters.
This password is too common.
This password is entirely numeric.
Bypass password validation and create user anyway? [y/N]: n
Password:
Password (again):

进入管理系统

访问:http://127.0.0.1:8000/admin

Python21050206.png

登录后能看到当前已经注册的两个模型Groups 和Users :

Python21050207.png

Python21050208.png

在后台管理系统中,可以很方便地对数据模型进行操作。

注册数据模型

在管理系统中并没有看到我们创建的数据模型,

这是因为我们还没有注册这个模型。

打开aboutApp/admin.py:

from django.contrib import admin
from .models import Award
# Register your models here.

class AwardAdmin(admin.ModelAdmin):
    list_display = ['description','photo']

admin.site.register(Award,AwardAdmin)

该段代码主要执行了以下操作:

  • 引入了Award类
  • 创建了AwardAdmin荣誉管理类
  • 将这两个类进行绑定 并实现注册

保存,刷新页面 可以看到后台管理页面增加了ABOUTAPP组

Python21050209.png

数据模型的增删查改

点击Award类的Add按钮,进入数据添加页面

Python21050210.png

添加过程中 如果遇到no such table: main.auth user old 错误,可参考文档:[Django报错:no such table: main.auth user old的解决]

按照同样思路,依次添加其余的数据:

Python21050211.png

除了向模型添加数据外,还可以通过管理系统实现模型数据的删、改、查操作,操作类似,不再赘述。