我有一个问题的模型和模板,我确信模型是在最好的顺序。我点击主页上的链接,得到一个错误:“BlogPost”对象不可读取
我有一个模型.py公司名称:
from django.db import models
# Create your models here.
class BlogPost(models.Model):
title = models.CharField(max_length=200)
body = models.TextField()
create_at = models.DateTimeField()
def __unicode__(self):
return self.title
在网址.py公司名称:
^{pr2}$以及视图.py公司名称:
from models import BlogPost
from django.http import HttpResponse, Http404
from django.template import RequestContext, loader
from django.shortcuts import render, get_object_or_404, render_to_response
def index(request):
posts = BlogPost.objects.all()
context = {'posts': posts}
return render(request, 'base.html', context)
def detail(request, app_id):
posts = BlogPost.objects.get(pk=app_id)
return render_to_response('app/detail.html', {"posts": posts}, context_instance=RequestContext(request))
def result(request, app_id):
return HttpResponse("To jest strona z wynikami %s" % app_id)
def vote(request, app_id):
return HttpResponse("Yo tu powinna byc strona z glosowaniem, ale to inny projekt %s" % app_id)
我得到一个错误:
'BlogPost' object is not iterable
Request Method: GET
Django Version: 1.6.2
Exception Type: TypeError
Exception Value:
'BlogPost' object is not iterable
Exception Location: /app/.heroku/python/lib/python2.7/site-packages/django/template/defaulttags.py in render, line 155
Python Executable: /app/.heroku/python/bin/python
Python Version: 2.7.6
Python Path:
['/app',
'/app/.heroku/python/bin',
'/app/.heroku/python/lib/python2.7/site-packages/distribute-0.6.36-py2.7.egg',
'/app/.heroku/python/lib/python2.7/site-packages/setuptools-2.1-py2.7.egg',
'/app/.heroku/python/lib/python2.7/site-packages/pip-1.5.4-py2.7.egg',
'/app',
'/app/.heroku/python/lib/python27.zip',
'/app/.heroku/python/lib/python2.7',
'/app/.heroku/python/lib/python2.7/plat-linux2',
'/app/.heroku/python/lib/python2.7/lib-tk',
'/app/.heroku/python/lib/python2.7/lib-old',
'/app/.heroku/python/lib/python2.7/lib-dynload',
'/app/.heroku/python/lib/python2.7/site-packages']
Server time: Mon, 3 Mar 2014 20:32:14 +0000
我的模板中有一个错误:
Error during template rendering
In template /app/app/templates/base.html, error at line 34
24 <p><a class="btn btn-lg btn-success" href="#" role="button">Sign up today</a></p>
25 </div>
26 {% endblock %}
27
28 {% block content %}{% endblock %}
29
30
31 <div class="row marketing">
32 <div class="container">
33 {% if posts %}
34 {% for p in posts %}
35 <h1><a href="{% url 'detail' p.id %}">{{ p.title }}</a></h1>
36 <b>{{ p.create_at}}</b>
37 <p>{{ p.body }}</p>
38 {% endfor %}
39 {% else %}
40 <p>Nie ma zadnych pol do wyswietlenia</p>
41 {% endif %}
42 </div>
43 </div>
44
请帮忙。在
不能对
get()
查询进行迭代。您有以下内容:在视图.py在
模板
^{pr2}$filter()
总是返回一个QuerySet(它是iterable),而管理器上的get()
方法总是直接返回单个对象(因此不可iterable)。在您可以在模板中尝试以下操作:
相关问题 更多 >
编程相关推荐