django url规则不起作用

时间:2011-07-26 19:26:15

标签: django-1.3

我是django新手。这是我的问题....我的主要urls.py有一个规则,用于检查发布的应用程序的已发布部分,如下所示:

(r'^(published/)$', include('published.urls')),

我发布的应用urls.py就像:

urlpatterns = patterns('published.views',
# Examples:
(r'^$', 'index',),
(r'^(?P<id>\d+)/$', 'article'),
)

我正在尝试获取这样的网址

http://localhost:8000/published/2/

问题是它显示404错误。只是为了澄清我的观点是这样的:

def article(request):
try:
    p = Published.objects.get(pk = id)
except Published.DoesNotExist:
    raise Http404
return render_to_response('published/inner.html', {'pubs': p}, context_instance = RequestContext(request))

谁能告诉我这是什么问题?

1 个答案:

答案 0 :(得分:0)

您应该尝试从$的末尾删除r'^(published/)$'。如果仍然无效,请尝试从^的开头删除r'^(?P<id>\d+)/$'。由于$匹配字符串的结尾,因此当第一个/之后有一个字符时,正则表达式无法匹配。