我在某些自定义管理页面触发 Django 管理站点而不是显示我的自定义页面时遇到问题。
我的urls.py如下:
urlpatterns = patterns('',
# ... trimmed ...
# Admin pages
url(r'^admin/doc/', include('django.contrib.admindocs.urls')),
url(r'^admin/', include(admin.site.urls)),
# Lobby Visitor Log
url(r'^visitorLog', include('lobbyVisitorLog.urls')),
)
在我的lobbyVisitorLog
应用程序中,我有以下目录结构,导致“管理”页面
lobbyVisitorLog
- templates
- admin
我的lobbyVisitorLog/urls.py如下:
urlpatterns = patterns('visitorLog.views',
url(r'^/$', views.home, name='homeView'),
url(r'^/search', views.search, name='searchView'),
url(r'^/submit', views.submit, name='submitView'),
url(r'^/admin/$', views.adminView, name='adminView'),
url(r'^/admin/import/$', views.adminImportView, name='adminImportView'),
url(r'^/(?P<guest_type>\w+)$', views.logEntry, name='logEntryView'),
)
管理索引页面的views.py如下所示:
def adminView(request):
return render(request, 'admin/index.html', {}, context_instance=RequestContext(request))
当我转到“mysite/visitorLog/admin/”时,我会看到带有以下消息的 Django 管理站点:“您无权编辑任何内容。”</p>
但是,如果我将“admin”目录更改为“utils”(或除“admin”之外的其他任何目录)并相应地更新我的目录views.py
,一切都会按预期显示!这没关系,我可以处理我的目录被称为“utils”,但它会惹恼我......就够了。
发生了什么导致 Django 管理页面加载而不是我的自定义页面?