繁体   English   中英

Django URL以模板正确的方式添加参数

[英]django url in template correct way to add parameter

views.py中

class LaViewSet(viewsets.ModelViewSet):

    serializer_class = IlSerializer

    def get_queryset(self):
        ilfiltro = self.kwargs['miopar']
        return models.Pippo.objects.filter(pippo=ilfiltro)

url.py中

url(r'^pippo/(?P<miopar>.+)', views.LaViewSet.as_view({'get': 'list'}), name="Serializzata"),

这是一个有效的网址:

http://127.0.0.1:8000/pippo/1

但是如果我放入模板:

{% url '1' 'Serializzata' %};

要么

{% url 'Serializzata'?1 %};

不断收到此错误:

TemplateSyntaxError:无法解析其余部分:来自“ Serializzata'?1'的'?1'

文档

网址

返回与给定视图和可选参数匹配的绝对路径引用(不带域名的URL)。 结果路径中的任何特殊字符都将使用iri_to_uri()进行编码。

通过在模板中对URL进行硬编码,这是一种输出链接而不违反DRY原理的方法:

{% url 'some-url-name' v1 v2 %}

因此,在您的情况下:

{% url 'Serializzata' 1 %}

尝试这个:

<a href="{% url 'Serializzata' 1 %}">

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM