我有一个网址设置与下面的视图(URL是在应用程序和应用程序的URL包括在项目):Django的URL的变化,但不会呈现正确的观点
url(r'^details/(?P<outage_id>\d+)/$', 'outage.views.outage_details'),
def outage_details(request, outage_id=1):
outage_info = Outages.objects.filter(id=outage_id)
return render_to_response('templates/outage/details.html', {'outage_info': outage_info}, context_instance=RequestContext(request))
当我点击http://localhost:8000
的链接,浏览器中的网址就会改变为http://localhost:8000/outage/details/1
,但该视图并不会显示正确的模板。页面保持不变。我没有得到任何错误,浏览器中的url更改,但details.html模板不呈现。 DB中有一个ID为1的中断。
有什么想法?
我看到的一个问题是,'Outages.objects.filter(id = outage_id)'返回一个查询集,而不是一个对象。那是你要的吗 ? – karthikr
我想django是如此的新鲜,我不知道这个答案。我知道,如果我从视图中删除查询,并且只是render_to_response模板,它仍然只会更改url并且实际上并不呈现模板。另外,如果我将文件名从details.html更改为其他内容,但不更改视图,则会发生同样的情况。没有错误。 – JasonS
你应该发布你的整个urls.py。您的索引视图可能会捕获所有网址。 –