1. 程式人生 > >Django模板中的超連結配置

Django模板中的超連結配置

一 超連結目標地址

  • href後面是目標地址

  • template中可以用"{% url 'app_name:url_name' param %}"

  • 其中app_name和url_name都是在url中配置

二 url函式的名稱引數

  • 根urls下,寫在include()的第二個引數位置,namespace = 'blog'

  • 應用下則寫在url()的第三個引數位置,name='article'

  • 取決於是否使用了include引用另一個url配置檔案

三 實戰

1 根urls.py配置

# -*- coding: utf-8 -*-

from django.conf.urls import url,include
from django.contrib import admin

#import blog.views as bv

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^blog/', include('blog.urls',namespace='blog')),
    url(r'^blog2/', include('blog2.urls')),
]

2 應用urls.py配置

from django.conf.urls import url,include
from . import views
urlpatterns = [
    url(r'^index/$', views.index),
    url(r'^article/(?P<article_id>[0-9]+)$', views.article_page,name='article_page'),
]

3 模板超連結配置

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<h1>
    <a href="">新文章</a>
</h1>
{% for article in articles %}
    <a href="{% url 'blog:article_page' article.id %}">{{ article.title }}</a>
    <br/>
{% endfor %}
</body>
</html>

四 執行效果

1 瀏覽器輸入http://localhost:8000/blog/index/

2 點選我的第一篇文章