小编典典

Django:尝试domain.com/admin时会给404一个旧的不存在的urls文件

python

我在某个时候有一个看起来像这样的urls文件:

# Uncomment the next two lines to enable the admin:
from django.contrib import admin
admin.autodiscover()

urlpatterns = patterns('',
# Example:
url(r'^$', 'girls.views.home', name = 'home'),
url(r'^registerasboy$', 'girls.views.regb', name= 'regb'), 
#url(r'^registerasgirl$', 'girls.views.reg', name= 'regg'),
url(r'^thankyou$', 'girls.views.thankyou', name= 'thankyou'),
url(r'^newchick$', 'girls.views.newchick', name= 'newchick'),
url(r'^chicks$', 'girls.views.chicks', name= 'chicks'),
#url(r'^thankyou$', 'generalsettings.views.thankyou', name = 'thankyou'),
# Uncomment the admin/doc line below to enable admin documentation:
# (r'^admin/doc/', include('django.contrib.admindocs.urls')),
#url(r'^reg$', 'generalsettings.views.home'),
# Uncomment the next line to enable the admin:
#(r'^admin/', include(admin.site.urls)),
#(r'^media/(?P<path>.*)$', 'django.views.static.serve', {'document_root':     settings.MEDIA_ROOT}),
)

和该网站的工作。我没有管理员。所以我决定取消注释管理行,并且会收到错误404

找不到页面(404)
请求方法:GET

请求URL:http//chicklister.com/admin

Using the URLconf defined in chick.urls, Django tried these URL patterns,
in this order:
^$ [name='home']
^registerasboy$ [name='regb']
^thankyou$ [name='thankyou']
^newchick$ [name='newchick']
^chicks$ [name='chicks']
^/(?P<path>.*)$
The current URL, admin, didn't match any of these.

这很奇怪,因为此处缺少管理行。现在,我将网址进一步更新为:

urlpatterns = pattern(’‘,
(r’^ admin /’,include(admin.site.urls)),)

但我得到管理员:

Using the URLconf defined in chick.urls, Django tried these URL patterns,
in this order:
^$ [name='home']
^registerasboy$ [name='regb']
^thankyou$ [name='thankyou']
^newchick$ [name='newchick']
^chicks$ [name='chicks']
^/(?P<path>.*)$
The current URL, admin, didn't match any of these.

但是,根据打印的网址文件中的行,任何其他网址都可以正常运行,例如www.domain.com/thankyou

这怎么可能?似乎已经在某个地方记住了它。

我执行的步骤:在www的整个文件夹中搜索“
registerasboy”,然后不再返回任何内容。我更改了模板上的文本,以确保我更新了正确的副本。我在settings.py中具有以下设置:

我注意到ROOT_URLCONF =’urls’实际上并没有做任何事情,因为一开始它是chic.urls

我究竟做错了什么?我似乎甚至都没有包含此类内容的文件…


阅读 176

收藏
2021-01-20

共1个答案

小编典典

只是在黑暗中一枪:

您是否在INSTALLED_APPS中添加了管理员,执行了syncdb并重新启动了服务器?

如果将Apache与mod_wsgi一起使用,则重新启动服务器很有用。它不会检测代码中的更改,因此您需要手动重新加载它。

开发服务器会自动重新加载代码。

以下是有关此问题的完整信息:http
:
//code.google.com/p/modwsgi/wiki/ReloadingSourceCode

2021-01-20