将JSON数据导入Django视图/模板

时间:2014-01-10 21:52:15

标签: python django json import django-views

所以我正在开发一个项目,我正在使用石墨图中的json数据,并尝试将其导入django views.py文件,然后在模板中获取我想要的值。导入将从远程URL发生,而不是直接从服务器本身进行。

这是我的json:

[{"target": "stocks.shared (last: 4204.0)", "datapoints": [[4379.0, 1389225600], [4204.0, 1389312000]]}]

这是我的观点文件的样子

def get_context_data(self, **kwargs):
    context = super(IndexView, self).get_context_data(**kwargs)
    context['stocks'] = JSON PULL
    return context

我试过这个并且它不起作用主要是因为json open并不意味着从外部拉。

json_data=open('URL')
context['shared'] = json.load(json_data)

1 个答案:

答案 0 :(得分:1)

您只需使用urllib.urlopen获取外部JSON数据,如下所示:

from urllib import urlopen

def get_context_data(self, **kwargs):
    context = super(IndexView, self).get_context_data(**kwargs)
    my_stock_url = 'http://mystockpage.org/stocks/'
    context['stocks'] = json.loads(urlopen(my_stock_url).read())
    context['last_stock'] = stocks[0]['target'].split()[2].strip(')')
    return context