您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如何在Django项目中有2个不同的管理站点?

如何在Django项目中有2个不同的管理站点?

可以继承Django的子类AdminSite(例如,将其放在admin.py项目根目录中):

from django.contrib.admin.sites import AdminSite

class MyAdminSite(AdminSite):
    pass
    #or overwrite some methods for different functionality

myadmin = MyAdminSite(name="myadmin")  

至少从1.9开始,你需要添加name参数以使其正常运行。这用于创建反向URL,因此名称必须是urls.py中的名称

然后,你可以admin.py像处理普通AdminSite实例一样在应用程序中使用它:

from myproject.admin import myadmin
myadmin.register(MyModel_A)

你还需要为其定义一些网址(在项目的中urls.py):

from myproject.admin import admin, user_site
from myproject.admin import myadmin
urlpatterns = patterns('',
    ...
    (r'^admin/', include(admin.site.urls)),
    (r'^myadmin/', include(myadmin.urls)),
Go 2022/1/1 18:18:47 有492人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶