Django 通过传递给模板的值更改 url

Django changing url by value passed to template

这是我在 Django 上的第一个项目,我想做的是我有一个变量 'a' 从我的模板中的视图传递,我正在这样使用它

<a href="{% url 'login:updateComplaint'%}{{a.id}}">

去特定的 url 在这种情况下说

http://127.0.0.1:8000/login/updateComplaint/4

但我的代码不是这个,而是将我发送到这个 url

http://127.0.0.1:8000/login/updateComplaint/0/4

谁能帮我解决这个问题如果你想要代码的任何其他部分,请评论

查看 url 模板标签上的文档:https://docs.djangoproject.com/en/1.10/ref/templates/builtins/#url

您需要将上下文中的变量作为参数传递给模板标记,而不是仅将其附加在末尾。

像这样的东西应该可以工作:

<a href="{% url 'login:updateComplaint' a.id %}">

您可以做两件事。

要么使用 {{ a.id }} 生成动态 url,如下所示:

<a href="/login/updateComplaint/{{a.id}}">

或者将 a.id 作为参数传递给 url :

<a href="{% url 'login:updateComplaint' a.id %}">