美文网首页程序员WEB前端程序开发我的Python自学之路
Django第六课:Django模板中的超链接配置

Django第六课:Django模板中的超链接配置

作者: 海深不蓝_ | 来源:发表于2017-02-02 20:58 被阅读2728次

    django第一课:创建第一个页面
    Django第二课:创建第一个页面(响应),template
    Django第三课:models
    Django第四课:Admain简介
    Django第五课:博客主页面开发
    在之前的文章里我们已经完成了一个博客的基本骨架,可是我们的超链接都是无效的,现在我们就要给它们配置URL。
    关于模板中"href"后URL的写法,django比较特殊,可以用{% url 'app_name:url_name' param %},app_name是应用的命名空间的名称,url_name是目标的地址,param是地址的参数。

    app_name和url_name都在url中配置,url函数的名称参数有两种写法,一个写在根urls.py的include()的第二个参数位置,namespace='blog',另一种是在应用下写在url()的第三个参数的位置,name = 'article',选择的依据是否使用include引用了另一个url配置文件。
    话不多说上代码:

    #根目录的urls.py
    urlpatterns = [
        url(r'^admin/', admin.site.urls),
        url(r'^blog/',include('blog.urls',namespace='blog')),
    ]
    #应用中的urls.py
    urlpatterns = [
    
        url(r'^$',views.index),
        url(r'^article/(?P<article_id>[0-9]+)$',views.article_page,name='article_page'),
    ]
    
    index.html中
    <body>
    <h1><a href="">新文章</a></h1>
    {% for article in articles %}
        <a href="{% url 'blog:article_page' article.id %}">{{ article.title }}</a>
        <br/>
    {% endfor %}
    

    这样主页到文章页的链接就OK了。

    相关文章

      网友评论

        本文标题:Django第六课:Django模板中的超链接配置

        本文链接:https://www.haomeiwen.com/subject/vwurittx.html