【发布时间】:2011-09-23 01:11:26
【问题描述】:
我返回 1 的 QuerySet,我的 JQuery 看起来像这样
<script>
$(document).ready(function(){
$("#search_form").submit(function(event)
{
event.preventDefault();
$.ajax({
type: "POST",
url: "object/search/",
processData: false,
dataType: "json",
success: function(data){
$.each(data, function(key, value){
alert( key + ': ' + value );
});
}
});
});});
</script>
警报将显示,但它只返回 0:[object Object]。我想显示正在返回的 Object 模型的 name 属性。就像使用 object.name 一样。我真的被困住了,感谢您帮助解决这个问题。
我的观点的代码是:
if request.is_ajax():
if request.method == 'POST':
format = 'json'
mimetype = 'application/json'
o = Object.objects.filter(name__icontains="bin")
data = serializers.serialize(format, o)
return HttpResponse(data, mimetype)
我只用这个查询返回 1 个对象,但它是 QuerySet 类型的。
编辑。这是返回时数据的样子。
>>> o
[<Object: Bin Ber>]
>>> data = serializers.serialize(format, o)
>>> data
'[{"pk": 1, "model": "objects.object", "fields": {"name": "Bin Ber", "roof": 3, "depth": [3], "user": 1, "created_when": "2011-08-16 03:11:36", "shared": false, "projects": [1], "description": null}}]'
【问题讨论】:
-
试试看
data槽console.log(data);。在那里你应该能够看到,你必须在存储在value的对象中访问什么。可能是 value.name -
没有看到您正在创建数据的视图,您返回的数据很难知道这里发生了什么
-
我已经更新了我原来的帖子。
标签: jquery ajax django parsing django-queryset