django urls.py не может обработать URL - PullRequest
0 голосов
/ 02 января 2012

Я создаю приложение django, мой проект называется domain_com, а имя приложения - gallery.Проект сопоставлен с domain.com, так что это работает, теперь, когда я создаю urls.py с этими перенаправлениями, он дает мне эти ошибки

(r'^domain_com/(?P<page_name>[^/]+)/edit/$', 'domain_com.gallery.views.edit_page'),
(r'^domain_com/(?P<page_name>[^/]+)/save/$', 'domain_com.gallery.views.save_page'),
(r'^domain_com/(?P<page_name>[^/]+)/$', 'domain_com.gallery.views.view_page')

error:

Using the URLconf defined in domain_com.urls, Django tried these URL patterns, in this order: 

^domain_com/(?P<page_name>[^/]+)/edit/$ 
^domain_com/(?P<page_name>[^/]+)/save/$ 
^domain_com/(?P<page_name>[^/]+)/$ 
The current URL, edit, didn't match any of these.

anyИдея, где проблема?Моя первоначальная установка django работала после создания приложения, поэтому я уверен, что это urls.py

, это мой apache config

<VirtualHost *:80>
ServerName www.domain.com
ServerAlias domain.com
DocumentRoot /var/www/www.domain.com/htdocs/
ErrorLog /var/www/www.domain.com/logs/error.log
CustomLog /var/www/www.domain.com/logs/access.log combined
SetHandler mod_python
PythonHandler django.core.handlers.modpython
PythonPath sys.path+['/var/app/virtual/']
SetEnv DJANGO_SETTINGS_MODULE domain_com.settings
SetEnv PYTHON_EGG_CACHE /tmp
<Location "/gallery/">
SetHandler None
</Location>
</VirtualHost>

Ответы [ 3 ]

3 голосов
/ 02 января 2012

Вы создали сложный URL-адрес вида http://domain.com/domain_com/page_name/edit/.Тем не менее, вы тестируете с URL http://domain.com/edit.Очевидно, что они не совпадают.

1 голос
/ 02 января 2012

после обновления мой ответ:

попробуйте это:

(r'^/edit/(?P<page_name>\w+)$', 'gallery.views.edit_page'),
(r'^/save/(?P<page_name>\w+)$', 'gallery.views.save_page'),
(r'^/(?P<page_name>\w+)$', 'gallery.views.view_page')

Пока urls.py является корневой папкой вашего приложения.

Тогда, если вы посетите:

http://domain.com/edit/page1

должно работать

0 голосов
/ 02 января 2012

Настройте оба ваших основных корневых URL-адреса для включения URL-адресов ваших приложений: https://docs.djangoproject.com/en/dev/topics/http/urls/#including-other-urlconfs

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