Django Admin 管理工具
Django 自动管理工具是 django.contrib 的一部分。你可以在项目的 setting.py 中的 INSTALLED_APPS 看到它:
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
)
django.contrib 是一套庞大的功能集,它是Django基本代码的组成部分。
使用管理工具
启动开发服务器,然后在浏览器中访问 http://127.0.0.1:8000/admin/ ,可以进入管理界面。我们可以通过命令 python manage.py createsuperuser
来创建超级用户,如下所示:
python manage.py createsuperuser
Username (leave blank to use 'root'): admin
Email address: admin@wqy.com
Password:
Password (again):
Superuser created successfully.
为了让 admin 界面管理某个数据模型。我们需要先注册该数据模型到 admin 。比如我们之前在 models.py 中创建了模型 Student ,修改 admin.py :
from django.contrib import admin
from stu.models import Student
# 1. 注册的第一种方式
# admin.site.register(Student, StudentAdmin)
# 第二种注册方式
@admin.register(Student)
class StudentAdmin(admin.ModelAdmin):
def set_sex(self):
if self.sex:
return '男'
return '女'
# 修改性别字段描述
set_sex.short_description = '性别'
# 展示字段
list_display = ['id', 'name', set_sex]
# 过滤
list_filter = ['name']
# 搜索
search_fields = ['name']
# 分页
list_per_page = 4
使用命令 python manage.py runserver
运行程序,打开网址 http://127.0.0.1:8000/admin/ , 界面如下:
我们在上面的代码里加了一些过滤语句,点开 student 看到效果如下: