2013-04-15 60 views
2

我嘗試安裝的管理工具的基本配置和失敗的URL調度識別包括admin_tools.urls的:管理工具配置拋出404:找不到網頁

#urls.py 
... 
import admin_tools.urls 
urlpatterns = patterns('', 
    url(r'^admintools/', include(admin_tools.urls)), 
    url(r'^admin/', include(admin.site.urls)), 
) 

#settings.py 
import django.conf.global_settings as DEFAULT_SETTINGS 
TEMPLATE_CONTEXT_PROCESSORS = DEFAULT_SETTINGS.TEMPLATE_CONTEXT_PROCESSORS + (
    "django.core.context_processors.request", 
) 

INSTALLED_APPS = (
    'django.contrib.auth', 
    ... 
    'admin_tools', 
    'admin_tools.menu', 
    'admin_tools.dashboard', 
    'django.contrib.admin', 
    'repmgr',) 

我沒有運行執行syncdb。我相信正則表達式匹配/ admintools /,因爲它包含了另一個應用程序。

詳細的錯誤響應爲:

Page not found (404) 
Request Method: GET 
Request URL: http://127.0.0.1:8000/admintools/ 
Using the URLconf defined in urlconf, Django tried these URL patterns, in this order: 
^__debug__/m/(.*)$ 
^__debug__/sql_select/$ [name='sql_select'] 
^__debug__/sql_explain/$ [name='sql_explain'] 
^__debug__/sql_profile/$ [name='sql_profile'] 
^__debug__/template_source/$ [name='template_source'] 
^admin/doc/ 
^admintools/ ^menu/ 
^admintools/ ^dashboard/ 
^sthrep/ 
The current URL, admintools/, didn't match any of these. 
+0

請提供完整的錯誤。 – pistache

+1

在此期間我意識到,/ admin/URL(實際上是/ sthrep /在我的情況下)現在確實顯示儀表盤。我不確定我的哪些變化影響了這一點。 我仍然覺得難以定義一個沒有真正映射的URL映射。另外,錯誤信息是不正確的,因爲django抱怨URL模式不是罪魁禍首,問題必須與include有關。 – rhoerbe

回答

2

該錯誤消息是完全正確的:

的Django告訴沒有URL模式匹配^admintools/^這是真的。這是因爲django-admin-tools不會創建不同的管理站點,而是擴展原來的管理站點。

^admintools/模式只爲其子模式創建,它提供訪問管理工具所需的頁面以便正常工作(例如,添加到原始管理員的新頁面)。

順便說一句,在django-admin-tools documentation,在安裝說明最後,他們說:

恭喜!在這一點上,你應該有一個工作安裝 django-admin-tools。現在,您只需登錄您的管理網站,即可查看 更改了哪些內容。

我想通過您的管理站點他們的意思是標準的管理站點。

所以我認爲訪問您的管理界面和菜單和儀表板的好方法是使用標準管理員。

+0

感謝您的澄清 – rhoerbe

+0

您能否將答案標記爲已接受或您是否需要其他信息? – pistache