使用模板变量创建Django命名URL?

使用模板变量创建Django命名URL?,django,django-templates,Django,Django Templates,如果需要向Django传递模板变量,如何在Django中指定命名URL模式?我的模板包含以下URL: # 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> 以下是我的特定于应用程序的u

如果需要向Django传递模板变量,如何在Django中指定命名URL模式?我的模板包含以下URL:

# 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>
以下是我的特定于应用程序的url文件:

# conf/urls.py
urlpatterns = patterns('',
    ...
    url(r'^members/',            include('apps.members.urls')),
    ...
)
# app/members/url.py
url(r'^near/(?P<uid>\d{1,})/$',
    'show_members',
    {'template': 'show_members.html'},
    name='show-members-near'),
#app/members/url.py
url(r'^near/(?P\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})/$']
NoReverseMatch at/personal_profile/welcome/
对于参数为“()”且关键字参数为“{}”的“show members near”,则相反。已尝试1个模式:['members/near/(?P\\d{1})/$']
我尝试插入这样的关键字参数,但无效:

<a href="{% url 'show-members-near' uid={{ uid }} %}">Show members near you</a>

在做了一些研究之后,我读到的每一篇文章似乎都表明关键字参数应该按照我上面的方式传递。我试图做的是等效于以下工作:


如何指定关键字参数?我在Django文档中没有看到任何可以解决这种情况的内容(尽管我可能没有看到)


谢谢

当然,这个案例得到了明确的支持和记录。您忽略了一个事实,即模板标记中的所有内容都是经过计算的。您只需将uid传入:

{% url 'show-members-near' uid=uid %}

您只需将uid作为关键字传入即可。你可以找到它的文档。因此,您的url调用如下所示:

<a href="{% url 'show-members-near' uid=uid %}">Show members near you</a>

<a href="{% url 'show-members-near' uid=uid %}">Show members near you</a>