【问题标题】:How to create a Django reverse url with a parameter如何使用参数创建 Django 反向 url
【发布时间】:2021-05-29 02:09:18
【问题描述】:

我在构造带参数的反向 url 时遇到问题

我已经尝试了this question 的答案,但没有成功

urls.py

urlpatterns = [
    path('publication-item/<str:publication_title>', PublicationItemView.as_view(), name='publication-item'),
]

xxx.html

<a href="{% url 'publication-item {{ publication.publication_title | urlencode }}' %}">

给出错误

'publication-item {{ publication.publication_title |没有找到 urlencode }}'。 '出版物项目 {{ 出版物.publication_title | urlencode }}' 不是有效的视图函数或模式名称。

xxx.html

<a href="{% url 'publication-item' %}?publication_title={{ publication.publication_title | urlencode }}">

生产

没有找到没有参数的“publication-item”反向。尝试了 1 种模式:['publicationspublication\-item/(?P[^/]+)$']

下面的工作,但当然它没有传递参数

urls.py

urlpatterns = [
    path('publication-item', PublicationItemView.as_view(), name='publication-item'),
]

xxx.html

<a href="{% url 'publication-item' %}" class="btn btn-primary">

我哪里错了?

【问题讨论】:

    标签: django


    【解决方案1】:

    你不应该使用双花括号,你已经在模板标签中,因此 Django 将解释变量:

    &lt;a href="{% url 'publication-item' <b>publication.publication_title</b> %}"&gt;

    你不需要自己进行 URL 编码,Django 会自动对参数进行 URL 编码。

    【讨论】:

      猜你喜欢
      • 2012-12-05
      • 1970-01-01
      • 2013-01-14
      • 2021-07-28
      • 2012-07-22
      • 2012-03-24
      • 2014-07-23
      • 2012-08-07
      • 2015-01-07
      相关资源
      最近更新 更多