Django url标记了多个参数

时间:2010-04-04 20:11:47

标签: python django django-urls

我有两个相似的代码。第一个按预期工作。

urlpatterns = patterns('',
                       (r'^(?P<n1>\d)/test/', test),
                       (r'', test2),
{% url testapp.views.test n1=5 %}

但添加第二个参数会使结果返回空字符串。

urlpatterns = patterns('',
                           (r'^(?P<n1>\d)/test(?P<n2>\d)/', test),
                           (r'', test2),)


{% url testapp.views.test n1=5, n2=2 %}

观看签名:

def test(request, n1, n2=1):

3 个答案:

答案 0 :(得分:19)

尝试

{% url testapp.views.test n1=5,n2=2 %}

没有参数之间的空格

<强>更新 截至Django 1.9(可能更早),正确的方法是使用空格省略逗号和单独的参数:

{% url testapp.views.test n1=5 n2=2 %}

答案 1 :(得分:1)

https://docs.djangoproject.com/en/1.9/ref/templates/builtins/#url

来自Django 1.5警告不要忘记在功能路径或模式名称周围加上引号!

{% url 'some-url-name' arg1=v1 arg2=v2 %}

答案 2 :(得分:0)

这是我使用这种技术的一个实际例子。也许这会有所帮助:

picking the daisies suddenly