硬编码的链接:
<li><a href="/polls/{{ question.id }}/">{{ question.question_text }}</a></li>
去除硬编码:
硬编码和强耦合的链接,对于一个包含很多应用的项目来说,修改起来是十分困难的。然而,因为你在 polls.urls
的 url()
函数中通过 name 参数为 URL 定义了名字,你可以使用{% url %}
标签代替它:
<li><a href="{% url 'detail' question.id %}">{{ question.question_text }}</a></li>
添加命名空间:
在根 URLconf 中添加命名空间。在 polls/urls.py
文件中稍作修改,加上 app_name
设置命名空间。
html修改为以下代码:
<li><a href="{% url 'polls:detail' question.id %}">{{ question.question_text }}</a></li>