标签:
代码结构
下面为某个网页的链接地址
<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的目录
标签:
原文地址:http://www.cnblogs.com/hb91/p/5410660.html