Как правильно получить Django url? - PullRequest
3 голосов
/ 29 апреля 2010

Я настроил отображение URL, которое выглядит следующим образом:

(r'enroll/$', 'enroll')

В моей среде разработки это отображение используется, когда я захожу в '/enroll/'.

Но в производственной среде приложение Django находится в разделе «/ activity /» и следует использовать «/ activity / enroll /».

Скажите, пожалуйста, как получить правильный URL в обоих случаях.

Заранее спасибо.

Ответы [ 2 ]

3 голосов
/ 29 апреля 2010

Я бы предложил сделать все возможное, чтобы ваши prod и dev были как можно более идентичными, однако, если это невозможно, вы можете использовать отдельные urlpatterns для среды разработки.

Если у вас есть настройки. Отладка, попробуйте следующее:

extra_patterns = patterns('',
    (r'enroll/$', 'enroll'),
)

if settings.DEBUG:
    urlpatterns = patterns('', (r'^', include(extra_patterns)))
else:
    urlpatterns = patterns('', (r'^activity/', include(extra_patterns)))
3 голосов
/ 29 апреля 2010

django.core.urlresolvers.reverse() или {% url %} можно использовать для преобразования ссылки на представление или имени urlconf в URL-адрес, подходящий для вывода.

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