首页 > 其他 > 详细

django 链接地址匹配流程

时间:2016-04-20 00:29:02      阅读:220      评论:0      收藏:0      [点我收藏+]

代码结构

技术分享

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

<body>
{% if latest_article_list %}
    <ul>
        {% for article in latest_article_list %}
        <li>
            <a href="/blog/p/{{ article.id }}/">
                {{ article.title }} </a>
        </li>
        {% endfor %}
    </ul>
{% else %}
    <p>No articles are available.</p>
{% endif %}

其中的链接地址为:

<a href="/blog/p/{{ article.id }}/">
                {{ article.title }} </a>
点击链接后,进行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<article_id>[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

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>ARTICLE</title>
</head>
<body>
<h1>{{ article.title }}</h1>
<p>{{ article.content }}</p>
</body>
</html>

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

效果:

技术分享

 

需要注意的是地址栏为:

技术分享

而不是detail.html的目录

 

django 链接地址匹配流程

原文:http://www.cnblogs.com/hb91/p/5410660.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!