django 后台管理简介
- django 框架自动生成的后台管理界面
- 从 ORM 模型中读取元数据信息,简单配置即可
- 其功能强大,可用于对数据库中数据的管理
将模型添加到后台管理
配置 admin 框架
下面配置 django 框架默认已经生成,check 下即可
- INSTALLED_APPS 配置应用及依赖
django.contrib.admin # 主要是这行
django.contrib.auth
django.contrib.contenttypes
django.contrib.messages
django.contrib.sessions
auth:用户认证相关
messages:给用户的提示信息
contenttypes:做复合类型时需要用到
- 模板选项配置 TEMPLATES 中的 OPTIONS
- 添加上下文处理器:context_processors
django.contrib.auth.context_processors.auth
django.contrib.messages.context_processors.messages
- 添加中间件 MIDDLEWARE
django.contrib.auth.middleware.AuthenticationMiddleware
django.contrib.messages.middleware.MessageMiddleware
- 配置 url
同级目录下的
urls.py
文档
from django.contrib import admin
urlpatterns = [
url(r'^admin/', admin.site.urls),
]
- 浏览器访问后台
python manage.py runserver 0.0.0.0:8000
http://HostIp:Port/admin
HostIp:项目主机的 IP 地址
Port:项目启动的端口
注:这里的用户名和密码是使用命令
python manage.py createsuperuser
创建的
- 需要先生成数据库文件
python manage.py makemigrations python manage.py migrate
- 创建超级用户
python manage.py createsuper # 按照提示输入对应信息即可
配置 admin 后台展示中文
在项目的目录下找到 settings.py
LANGUAGE_CODE = 'zh-hans'
TIME_ZONE = 'Asia/Shanghai'
将上面两处修改完成即可
ORM 模型配置
- 在模块中新建 admin.py 文件
- 封装模型自定义的管理后台功能和选项
- 每个模型创建一个 ModelAdmin 的子类
ModelAdmin 配置选项- fields/exclude ----需要编辑/不需要编辑的字段列表
- form ----自定义表单
- list_display ----在列表中显示的字段
- ordering ----指定排序规则
- INSTALLED_APPS 配置应用
- 需要管理的 ORM 模型自动搜索添加至后台管理
'testadmin', # 自己注册的APP模块,即使用 python manage.py createapp testadmin 创建的APP模块
from django.contrib import admin
from testadmin.models import Info
# Register your models here.
@admin.register(Info) # 注册到后台模块方法
class InfoAdmin(admin.ModelAdmin):
""" 信息 """
list_display = ['name', 'age', 'addr', 'create_time', 'update_time']
list_filter = ('name', 'age',)
search_fields = ('name',)
需要和 models.py 文件中模型对应
注册到后台模块有两种:
# 方法一 @admin.register(Info) # 方法二 admin.site.register(Info, InfoAdmin) # 两个选择一种书写即可
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于