【NB】删除模板硬编码网址

[复制链接]
查看480 | 回复0 | 2022-11-14 08:17:25 | 显示全部楼层 |阅读模式


请记住,当我们在 polls/index.html 链接到一个问题,链接被硬编码的部分是这样的:

<li><ahref="/polls/{{question.id}}/">{{question.question_text}}</a></li>
使用此硬编码,紧密耦合的方法的问题是:它在更改项目的URL用了很多模板。不过,既然 polls.urls模块中定义名称参数url() 函数,您可以通过使用 {% url %}模板删除标签在URL配置中定义的特定URL路径的依赖:

<li><ahref="{%url'detail'question.id%}">{{question.question_text}}</a></li>

这种工作方式是通过为polls.urls模块中指定查找的URL定义。可以准确地看到'detail'的URL名称定义如下:

...
# the 'name' value as called by the {% url %} template tag
url(r'^(?P<question_id>[0-9]+)/$', views.detail, name='detail'),
...

如果你想要把投票详细视图的URL更改成其它的,也许像 polls/specifics/12/ 取代在模板(或templates),需要在 polls/urls.py 改变它:

...
# added the word 'specifics'
url(r'^specifics/(?P<question_id>[0-9]+)/$', views.detail, name='detail'),
...

aaaa
村长黑科技是专业提供项目资源的服务的村长黑科技平台,如合购网赚项目、引流推广软件、软件程序开发等项目就选村长黑科技平台,参与或发布项目定制各种软件就来村长黑科技平台
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则