Джанго: при попытке domain.com/admin выдает 404 со старым несуществующим файлом URL - PullRequest
0 голосов
/ 27 ноября 2010

В какой-то момент у меня был файл URL, который выглядел так:

# 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.

, что странно, потому что здесь отсутствует строка администратора. Теперь я обновил мои URL-адреса до:

urlpatterns = Patterns ('',
(r '^ admin /', включая (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.

и, тем не менее, любые другие URL-адреса, такие как www.domain.com/thankyou, соответствуют строкам в напечатанном файле url

Как это возможно? Кажется, это где-то запомнилось.

Шаги, которые я сделал: искал всю папку в интернете на предмет 'registerasboy' и больше ничего не возвращал. Я изменил текст в шаблоне, чтобы убедиться, что я обновляю правильную копию. У меня есть следующие настройки в settings.py:

ROOT_URLCONF = 'urls' что я заметил, на самом деле ничего не делал, так как в начале это был chic.urls

Что я делаю не так? мне кажется, что даже файл с таким содержимым больше не существует ...

1 Ответ

2 голосов
/ 27 ноября 2010

Просто выстрел в темноте:

Вы добавили администратора в INSTALLED_APPS, сделали syncdb и перезагрузили сервер?

Перезапуск сервера полезен, если вы используете Apache с mod_wsgi,Он не обнаруживает изменения в коде, поэтому вам необходимо перезагрузить его вручную.

Сервер разработки автоматически перезагружает код.

Вот полная информация об этой проблеме: http://code.google.com/p/modwsgi/wiki/ReloadingSourceCode

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...