我经历了不少的django教程,我终于准备好自己出去了。但是,我的第一个非辅导程序是抛出一个错误,而且我已经敲了几天头。我希望它是一个非常noob的问题,因为,好吧,我。
当我使用此视图时
def todo(request):
latest_list = Item.objects.all()
return HttpResponse(latest_list)
我得到了
conquer djangocan I do this?learn thislearn this
这是填充数据库的四个项目。由于它们是连接在一起的,所以并不是很方便,而且它们似乎不会被移交给模板。
当我更改view.py以尝试使用
与模板对话时def todo(request):
latest_list = Item.objects.all()
return render_to_response,('index.html', {"latest_list", latest_list})
我得到了
'tuple' object has no attribute 'status_code'
是否正在返回'self.task'的模型将返回限制为仅该字段?我看过的其他教程似乎只返回一个值(返回'self'会给我一个非常类似的错误。
也可能是我没有传入
任何可以帮助我走上正确道路的帮助都将不胜感激。
格雷格
我的model.py
from django.db import models
class Item(models.Model):
task = models.CharField(max_length=60)
taskNotes = models.CharField(max_length=600)
created = models.DateTimeField(auto_now_add=True)
done = models.BooleanField(default=False)
def __unicode__(self):
return self.task
我的views.py
from django.shortcuts import render_to_response, get_object_or_404
from django.template import RequestContext
from django.http import HttpResponse
from myToDo.todo.models import Item
def todo(request):
latest_list = Item.objects.all()
return HttpResponse(latest_list)
我的index.html(模板)
{% if latest_list %}
<ul>
{% for task in latest_list %}
<li>{{ Item.task }}</li>
{% endfor %}
</ul>
{% else %}
<p>Looks like you're all done</p>
{% endif %}
答案 0 :(得分:2)
return render_to_response,('index.html', {"latest_list", latest_list})
删除逗号affer render_to_response,你应该没问题。原因:逗号使返回值成为元组对象,但需要从视图中返回HttpResponse对象。
答案 1 :(得分:1)
您对return
进行了蠢事。
def todo(request):
latest_list = Item.objects.all()
return render_to_response('index.html', {"latest_list", latest_list})
请注意函数名后缺少逗号。