JSON响应不是普通对象
JSON response not a plain object
这是一个获取Django应用程序的所有对象的请求,它不是获取一个普通对象,因为打印显示它只是一个字符串
Javascript: $.getJSON("/cadastro/getAllPessoas/", function(data){
console.log(data);
console.log(typeof(data));
console.log($.isPlainObject(data));
//Raises error on isArrayLike():
$.each(data,function(){
arrayValues.push([this["pk"],this["fields"]["nome"]]);
})
});
控制台输出:
[{"model": "cadastroapp.djangotestpessoa", "pk": 1, "fields": {"nome": "Gabriel"}}]
string
false
views.py:
from django.core import serializers
def getAllPessoas(request):
data = serializers.serialize('json', Pessoa.objects.all(), fields=('objectid','nome'))
return JsonResponse(data, safe=False)
您在Django视图中序列化了两次,因为serializers.serialize
和JsonResponse都转换为JSON。不要那样做;只返回一个带有序列化值的正常响应。
return HttpResponse(data, content_type='application/json')
相关文章:
- 预期响应包含一个对象,但在angular js中得到一个数组错误
- 带有对象解析的响应javascript ajax失败
- 我应该如何将响应数据保存在对象(json)中以获得更好的操作和性能
- 使用来自不同异步函数的响应创建一个json对象
- 响应应包含一个对象,但得到的却是GET操作的数组
- 无法访问响应 JSON 对象
- 通过iron-ajax初始化对象数组(链接到caller's元素的响应)
- 我不知道如何正确地将REST响应对象传递给ReactJS子组件
- 为什么不是't html<对象>元素响应鼠标事件
- object响应时出现对象错误javascript
- 提取API对Javascript中JSON对象响应的特定部分
- 获取 API 响应对象并替换(映射)所有键
- 如何在 http 上调用 end().服务器响应对象
- 尝试从对象打印出响应消息
- 显示对象.响应 XML 文本以进行调试
- 为什么对象响应未定义
- JavaScript提交按钮,从springMVC返回对象响应
- Angular从预期对象响应中提取数组
- 比较对象数组中的值与对象响应数组中的值
- Javascript:通过lodash、下划线或corejavascript转换对象响应数组