如何解决'dict'对象没有属性'_meta'

时间:2017-05-31 22:09:53

标签: django python-3.x rest asp.net-web-api django-rest-framework

我正在尝试从网络API中检索一些数据,因为我想在浏览器中显示,而我想通过将此数据分配给变量来操纵它,所以我可以操纵数据,但我收到错误:

  

'dict'对象没有属性'_meta'

视图

from django.core import serializers
from rest_framework.views import APIView
from rest_framework.response import Response
import json, urllib.request
from django.views.generic import View
from django.http import JsonResponse

def get_data(request, *args, **kwargs):
    with urllib.request.urlopen("http://10.61.202.98:8081/T/ansdb/api/rows/dev/tickets?id=1003611",timeout=10) as url:
        response_data = json.loads(url.read().decode())

    response_data_serialized = serializers.serialize('json',response_data)
    return JsonResponse(response_data_serialized, safe=False)

网址

urlpatterns = [
    url(r'^$', views.index, name='index'), # home
    url(r'^statistics/$', views.statistics, name='statistics'),
    url(r'^statistics/data$', get_data, name='get_data'),]

我想要检索的数据格式如下:

[{
 id: 100361324,
 Aging_Deferred_Transferred: "",
 Aging_Open_Issue: "",
 Aging_Un_investigated_Issue: "",
 CreatedBy: "userx@.....com",
 DeltaQD: null,
 DeltaQDBadAttempts: null,
 Escalation_Category: "",
 Golden_Cluster: "",
 Incident_DateTime: "2017-02-01
 Week: "8",
 Weekend_Flag: "Yes"
}]

我读过的一些链接是Django JSON:: 'dict' object has no attribute '_meta'Django1.9: 'function' object has no attribute '_meta',但在这些链接中,解决方案不符合我的问题。

欢迎任何有关如何解决此问题的帮助。

提前谢谢。

1 个答案:

答案 0 :(得分:0)

似乎我不需要序列化数据,只需使用以下代码修改代码:

def get_data(request, *args, **kwargs):
with urllib.request.urlopen("http://10.61.202.98:8081/T/ansdb/api/rows/dev/tickets?id=1003611",timeout=10) as url:
    response_data = json.loads(url.read().decode())
print(response_data)
return JsonResponse(response_data, safe=False)

这使我可以在我的应用程序的当前窗口中可视化JSON,但我仍然无法在控制台中看到此JSON对象。