Как вы определяете шаблон именованного URL-адреса в Django, если вам нужно передать ему переменную шаблона? Мой шаблон содержит следующий URL:Создать URL-адрес Django с использованием переменной шаблона?
# templates/welcome.html
# Link to template that shows all members near member with this uid
<a href="{% url 'show-members-near' %}uid={{ uid }}">Show members near you</a>
Мой файл URLconf верхнего уровня содержит следующую картину, которая указывает на конкретного приложения URL-адрес файла:
# conf/urls.py
urlpatterns = patterns('',
...
url(r'^members/', include('apps.members.urls')),
...
)
Вот мое приложение конкретным URL файла :
# app/members/url.py
url(r'^near/(?P<uid>\d{1,})/$',
'show_members',
{'template': 'show_members.html'},
name='show-members-near'),
Это ошибка, я получаю:
NoReverseMatch at /personal_profile/welcome/
Reverse for 'show-members-near' with arguments '()' and keyword arguments '{}' not found. 1 pattern(s) tried: ['members/near/(?P<uid>\\d{1})/$']
Я попытался вставить ключевое слово аргумент, как это, но это не сработало:
<a href="{% url 'show-members-near' uid={{ uid }} %}">Show members near you</a>
После выполнения некоторых исследований, все, что я читал, казалось, показывают, что ключевое слово аргумент должен быть принят, как я это сделал вышеперечисленное. То, что я пытаюсь сделать, это эквивалент, после чего делает работы:
<a href="/members/near/{{ uid }}/">See who's here</a>
Как указать ключевое слово аргумент? Я не видел ничего, что обращало бы внимание на эту ситуацию в документах Django (хотя я, возможно, пропустил это).
Спасибо!