[英]Basic Django,How to write a URLConf for a blog's DetailView Post?
我是Django的新手,我在為mysql目錄中的博客應用程序編寫URLConf的正確代碼時遇到了問題。博客出現在http://127.0.0.1:8000/blog/但我無法在博客中查看帖子使用超鏈接。 我得到的錯誤是“使用mysite.urls中定義的URLconf,Django按以下順序嘗試了這些URL模式:
我的mysite \\ blog \\ url.py文件如下所示:
from django.conf.urls import patterns, include, url
from django.views.generic import ListView,DetailView
from blog.models import Post
urlpatterns=patterns('',
url(r'^$',ListView.as_view(
queryset=Post.objects.all().order_by("-date")[:10],
template_name="blog.html")),
url(r'^(blog/?P<post_id>\d+)/$', DetailView.as_view(
model = Post,
template_name = "post.html")),
)
如何在我的博客應用程序中顯示帖子的DetailView?我有blog,base和post.html的模板文件。 post.html看起來像:
{%extends "base.html"%}
{%block content%}
<h3><a href="/blog/{{post.id}}">{{post.title}}</a></h3>
<div class ="post_meta">
on {{post.date}}
</div>
<div class = "post_body">
{{post.body|safe}}
</div>
{% endblock %}
您的URLConf未正確調用模板中的URL。
url(r'^(blog/?P<post_id>\d+)/$',
...正在嘗試使用/(blog
作為網址的一部分)獲取網址,例如www.yoursite.com/blog/(blog/post_id/
。首先,當您包含yourapp.urls
時,您已經包含/ blog /在主要的URLConf。第二,你的(
在錯誤的地方。
嘗試將其更改為:
url(r'^(?P<post_id>\d+)/$',....rest of your URLConf....
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.