博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
django 链接地址匹配流程
阅读量:4637 次
发布时间:2019-06-09

本文共 1485 字,大约阅读时间需要 4 分钟。

前提:

 

代码结构

 

 

步骤一:

下面为某个网页的链接地址

{% if latest_article_list %}    
{% else %}

No articles are available.

{% endif %}

其中的链接地址为:

步骤二: 点击链接后,进行URL匹配。 第一层 mysite中的url.py
urlpatterns = [    url(r'^admin/', include(admin.site.urls)),    url(r'^blog/',include('blog.urls'))]

第二层 blog中的url.py

urlpatterns = [    url(r'^$', views.index, name='index'),    url(r'^p/(?P
[0-9]+)/$', views.detail,name='detail')]

 

步骤三:

然后调用view.detail  (在view.py中)

def detail(request, article_id):    article = get_object_or_404(Article, pk=article_id)    return render(request, 'blog/p/detail.html', {
'article': article})

 

步骤四:

然后返回 目录 blog/p/detail.html

    
ARTICLE

{
{ article.title }}

{

{ article.content }}

根据article.id值在数据库中查找相应字段,填充article.title和article.content的具体值。

效果:

 

需要注意的是地址栏为:

而不是detail.html的目录

 

移除硬编码

 

html文件中的链接   {
{ article.title }}
blog中的url.py文件有name参数
urlpatterns = [    url(r'^$', views.index, name='index'),    url(r'^p/(?P
[0-9]+)/$', views.detail,name='detail')]
所以使用{% url %}标签,链接改为
{
{ article.title }}
处理多个项目出现相同的detail,使用命名空间

在mysite的url中设置

urlpatterns = [     url(r'^admin/', include(admin.site.urls)),     url(r'^blog/',include('blog.urls', namespace='blog')) ]
链接改为
{
{ article.title }}

 

转载于:https://www.cnblogs.com/hb91/p/5410660.html

你可能感兴趣的文章
计算多项式的值
查看>>
DP(动态规划)
查看>>
chkconfig
查看>>
TMS320F28335项目开发记录2_CCS与JTAG仿真器连接问题汇总
查看>>
最强的篮球队和马尔可夫模型
查看>>
hdu-4302-Holedox Eating-线段树-单点更新,有策略的单点查询
查看>>
cocos2d-x 音效中断问题
查看>>
子分类账知识学习(汇总网上比较有用的资料)
查看>>
pyQt 每日一练习 -- 登录框
查看>>
wp 删除独立存储空间文件(多级非空文件夹删除)
查看>>
Loadrunner安装使用入门
查看>>
smartupload 上传文件时 把页面编码改成gbk 解决乱码
查看>>
EPS是什么格式
查看>>
Python的数据库操作(Sqlalchemy)
查看>>
2.抽取代码(BaseActivity)
查看>>
My simplified pickit2 clone
查看>>
Redis 入门知识
查看>>
夏天过去了, 姥爷推荐几套来自smashingmagzine的超棒秋天主题壁纸
查看>>
转--Android如何在java代码中设置margin
查看>>
反射的所有api
查看>>