2013-02-26 93 views
0

嗨我正在学习一个学生数据库应用程序,我做了更多的功能,并绊倒了这个错误。一切似乎都很清楚 我明白这个错误是什么意思,因为我以前遇到过这个应用程序。我不知道哪里出了问题。Django TemplateSyntaxError at/school/

TemplateSyntaxError at /school/ 
Caught NoReverseMatch while rendering: Reverse for 'cat' with arguments '('',)' and keyword arguments '{}' not found. 
Exception Type: TemplateSyntaxError 
Exception Value: Caught NoReverseMatch while rendering: Reverse for 'cat' with arguments '('',)' and keyword arguments '{}' not found. 
In template /home/tafe/mysite/school/templates/index.html, error at line 3 

Caught NoReverseMatch while rendering: Reverse for 'cat' with arguments '('',)' and keyword arguments '{}' not found. 
1 {% if students %} 

2 <ul>   

3 {% for student in students %} 
4 <li><a href="{% url school:cat poll.id %}">{{student.First_name}}</li>  

我views.py

from mysite.school.models import student 
from django.shortcuts import render_to_response 
from django.http import HttpResponse,Http404 

def index(request):  
     students = student.objects.all() 
    return render_to_response('index.html',{'students':students}) 

def cat(request,poll_id): 
    students = get_object_or_404(student,pk =poll_id) 
     return render_to_response('student.html',{'students':student}) 

我的index.html

{% if students %} 
    <ul>   

{% for student in students %} 
<li><a href="{% url myapp:cat poll.id %}">{{student.First_name}}</li>  
{% endfor %} 
</ul> 
{% endif %} 

我student.html

{% if students %} 
<ul> 
    {% for student in students %} 
<li>{{student.First_name}}</li> 
{% endfor %} 
</ul> 

我的URLconf

from django.conf.urls.defaults import patterns,include , url 
from django.contrib import admin 
from mysite.school.views import index,cat 

admin.autodiscover() 

urlpatterns = patterns ('', 
    url(r'^$',index), 
    url(r'^(?P<poll_id>\d+)/$',cat,name='cat'), 
) 
+0

它只是弄脏的应用程序,看看有什么我可以储存卡.Okay肯定,如果你不忙 – donkeyboy72 2013-02-26 05:31:46

+0

好吧,我把它。谢谢你cathy – donkeyboy72 2013-02-26 05:52:32

+0

送回...... – catherine 2013-02-26 06:36:22

回答

2

您的学校主要的URLconf有$,这就是为什么你的错误的原因

urlpatterns = patterns('', 
    url(r'^admin/', include(admin.site.urls)), 
    url(r'^school/',include('school.urls',namespace='school')), 
) + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) 

urlpatterns += staticfiles_urlpatterns() 

正如我走得更远,这是我遇到的错误:

  1. 您索引没有httpresponse
  2. 你没有定义get_object_404
  3. 如果你的模型是学生不使用变量相同与学生,让学生或任何东西
  4. 当你使用get_object_404或只呈现一个值。你不能使用forloop。只需拨打student.first_name或student.id
+0

哦对不起其他错误。这是因为我一次只复制一行到我的USB文件夹。我一定已经忘记了顶部的那些线条。 – donkeyboy72 2013-02-26 06:41:08

+0

。你知道我的猫的功能吗。我正在使用带有forloop的get_object_404,它没有工作,所以我也改变了它student.objects.all(),它的工作原理:D – donkeyboy72 2013-02-26 08:05:45

+0

它不会在forloop上工作,因为你只调用一个数据。 Forloop只适用于有很多数据要过滤 – catherine 2013-02-26 08:07:28

相关问题