Django视图不返回json数据,但在shell中执行此操作

时间:2012-03-25 15:32:29

标签: python django json httpresponse

如果我启动开发服务器并转到某个视图。我没有回应。

我的观点如下:

from django.http import HttpResponse, Http404
from goals.models import Child
import json

def viewChildren(request):
    jsonData= []
    allChildren = Child.objects.all()
    for child in allChildren:
        jsonData.append({'id': child.id, 'name': child.name})
    return HttpResponse(json.dumps(jsonData),mimetype="application/json")

为了测试发生了什么,我做了以下

python manage.py shell
>>> import goals.views as v
>>> r = v.viewChildren('')
>>> print r
Content-Type: application/json

[{"id": 1, "name": "Test Child"}, {"id": 2, "name": "Second child"}]

所以我知道视图是正确的,并且在调用视图后传递正确的数据 ...但是当我从浏览器中查看时,这不会被传递。

有什么建议吗? (这类似于很多问题但我没有发现上述情况,其中视图提供了正确的响应,但是从浏览器中却没有)

1 个答案:

答案 0 :(得分:1)

刚刚解决了问题。我拿出所有剩下的网址,因为我认为他们可能不正确。事实证明,之前的编辑已使所有网址转到空白索引,但未返回任何响应。解决之后,上面工作得很好。

无论如何都要感谢...