码迷,mamicode.com
首页 > 其他好文 > 详细

django 链接地址匹配流程

时间:2016-04-20 00:29:41      阅读:300      评论: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
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!