Подтвердить что ты не робот

Кто-нибудь знает хороший учебник по URL-адресам Django?

Я ищу хороший учебник для пространств имен URL в Django. Я считаю, что официальная документация слишком скудна - ей не хватает хороших примеров. Я нашел аналогичный вопрос здесь, в стеке, но ответы не помогли мне полностью понять предмет.

4b9b3361

Ответ 1

Согласовано, документы для этого довольно запутывают. Здесь мое чтение (NB: весь код не проверен!):

В apps.help.urls:

urlpatterns = [
    url(r'^$', 'apps.help.views.index', name='index'),
    ]

В главном urls.py:

urlpatterns = [
    url(r'^help/', include('apps.help.urls', namespace='help', app_name='help')),
    url(r'^ineedhelp/', include('apps.help.urls', namespace='otherhelp', app_name='help')),
    ]

В вашем шаблоне:

{% url help:index %}

должен указывать URL /help/.

{% url otherhelp:index %}

должен выводить url /ineedhelp/.

{% with current_app as 'otherhelp' %}
    {% url help:index %}
{% endwith %}

должен также генерировать url /ineedhelp/.

Аналогично, reverse('help:index') должен производить /help/.

reverse('otherhelp:index') должен производить /ineedhelp/.

reverse('help:index', current_app='otherhelp') должен также производить /ineedhelp/.

Как я уже сказал, это основано на моем чтении документов и моем существующем знакомстве с тем, как все работает на территории Django. Я не нашел времени, чтобы проверить это.

Ответ 2

Это из документов

(r'^help/', include('apps.help.urls', namespace='foo', app_name='bar')),

Может быть, вы должны быть более конкретными в том, что вы пытаетесь сделать.