admin.site.urls是什么

admin.site.urls 是 Django 框架中用来注册 管理后台(Admin Site) 的 URL 配置的一个属性。它通常在项目的主 URL 配置文件(urls.py)中引用,用于将 Django 的管理后台功能添加到项目的路由中。

示例

from django.contrib import admin
from django.urls import path

urlpatterns = [
    path('admin/', admin.site.urls),  # 将管理后台的URL映射到/admin/
]

附图:

img

工作原理

  • admin.site 是一个 AdminSite 类的实例,它负责管理后台的逻辑和视图。

  • urls 属性包含了管理后台的路由配置,比如登录页、模型管理页面等。

  • 使用 path('admin/', admin.site.urls) 将管理后台的所有路由映射到 /admin/

管理后台功能

  • 提供对数据库模型的增删改查操作。

  • 自动生成表单和页面。

  • 支持用户认证和权限管理。

可定制性

如果需要自定义管理后台的行为,可以继承 AdminSite 类并重写相关方法。例如:

from django.contrib.admin import AdminSite

class MyAdminSite(AdminSite):
    site_header = "自定义管理后台"
    site_title = "后台管理"
    index_title = "欢迎使用管理系统"

custom_admin_site = MyAdminSite(name='custom_admin')

# 在urls.py中使用自定义的管理站点
urlpatterns = [
    path('custom-admin/', custom_admin_site.urls),
]

这样,管理后台就可以在 /custom-admin/ 路径下访问,并且具有自定义的标题和样式。

posted @ 2024-11-21 09:43  hisun9  阅读(1)  评论(0编辑  收藏  举报