2

我是 Django 的新手,所以这可能是一个愚蠢的问题,但是我正在努力寻找搜索 Goolge 的答案。我的问题如下...

在其他语言中,当在 HTML 页面中创建链接时,您会使用 buildURL(page) 函数来创建动态链接,即

<a herf="buildURL(pageName,queryObjects) >link</a>  

这将生成带有参数的 URL。

Django 中是否有以正确格式构建 URL 的函数,即生成带有参数的 Django 页面的完全限定 URL?

4

2 回答 2

3

在您的模板中,您永远不应该硬写 url 视图。取而代之的是,一个好的做法是命名每个 url 并在模板中引用该名称。

命名一个网址:

from django.conf.urls import patterns, url
urlpatterns = patterns('',
    #...
    url(r'^article/(\d+)/$', 'news.views.article', name='article_by_id'),
    #...
)

要在模板中引用 url:

<ul>
{% for article in articles %}
<li><a href="{% url article_by_id article.pk %}">Article {{article.name}} </a></li>
{% endfor %}
</ul>

在URL Distpatchar django文档中了解更多信息。

于 2012-12-09T21:25:45.653 回答
0

从我在 django 文档中看到的应该是

<ul>
{% for article in articles %}
<li><a href="{% url 'article_by_id' article.pk %}">Article {{article.name}} </a></li>
{% endfor %}
</ul>

即“article_by_id”而不是article_by_id。这对我有用

于 2022-02-02T19:36:22.547 回答