要使用Admin站点,需先完成6个步骤的操作:注册应用、注册上下文处理器、注册中间件、配置URL、迁移数据库和创建超级用户。
在执行django-admin命令创建项目时,Django会自动完成前4个步骤。
在settings.py项目配置文件的INSTALLED_APPS变量中注册Admin应用以及相关的支持应用,示例代码如下。
INSTALLED_APPS = [
'django.contrib.admin', #Admin站点
'django.contrib.auth', #用户认证系统
'django.contrib.contenttypes', #模型权限
'django.contrib.sessions', #会话管理
'django.contrib.messages', #消息管理
……
]
在TEMPLATES模板配置变量的OPTIONS参数中包含auth和messages上下文处理器,示例代码如下。
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.contrib.auth.context_processors.auth', #用户认证
'django.contrib.messages.context_processors.messages', #消息管理
……
],
},
},
]
在模板配置变量MIDDLEWARE中包含AuthenticationMiddleware中间件和MessageMiddleware 中间件,示例代码如下。
MIDDLEWARE = [
'django.contrib.auth.middleware.AuthenticationMiddleware', #用户认证
'django.contrib.messages.middleware.MessageMiddleware', #消息管理
……
]
默认情况下,Admin站点使用英文。如果要使用中文,可注册本地化中间件,示例代码如下。
MIDDLEWARE = [
'django.middleware.locale.LocaleMiddleware', #本地化中间件
……
]
在urls.py文件中添加Admin站点的URL配置,示例代码如下。
from django.contrib import admin
from django.urls import path
urlpatterns = [
path('admin/', admin.site.urls), #Admin站点URL配置
]
启动开发服务器后,在浏览器中访问http://127.0.0.1:8000/admin
Admin站点默认在数据库中保存相关数据。在访问Admin站点之前,应先执行数据库迁移操作,创建相关的数据表。