免责声明:我对解析和访问 JSON 完全陌生,而且我才刚刚开始了解 django。
细节:
我正在尝试访问我在 django 模板中获得的 JSON 对象内的一些数据:
示例 JSON:
{"entry":[
{"id":"1234567","hash":"1234567",
..."name":{"givenName":"John","familyName":"Doel","formatted":"John H. Doe"},
..."currentLocation":"Los Angeles, CA",
..."emails":[{"primary":"true","value":"jdoe@example.com"}],
..."accounts":[
...{"domain":"facebook.com","url":"http:\/\/www.facebook.com\/john.doe",..."shortname":"facebook"},
...{"domain":"twitter.com","display":"@jdoe411","url":"http:\/\/twitter.com\/jdoe411",..."shortname":"twitter"}],
..."urls":[{"value":"http:\/\/www.example.com","title":"example url"},]}
]}
使用 Django 模板标签获得:
@register.inclusion_tag('includes/gravatar_links.html')
def gravatar_links(email, first_name):
url = "http://www.gravatar.com/" + hashlib.md5(email.lower()).hexdigest()
url += '.json'
response = urllib2.urlopen(url)
interm = simplejson.load(response)
data = simplejson.dumps(interm)
name = first_name
return {'gravatar_links': {'name': name, 'data': data}}
我只是调用{{ gravatar_links.name }}
and {{ gravatar_links.data }}
,我可以看到用户名和所描述的 JSON 数据。
目标:
我想访问 JSON 对象中的特定键,即"accounts"
and "urls"
,并自定义输出,(例如)"Follow {{ gravatar_links.name }} on <a href="{{ gravatar_links.data.accounts.url }}">{{ gravatar_links.data.accounts.shortname }}</a> and see their work at <a href="{{ gravatar_links.data.urls.url }}">{{ gravatar_links.data.urls.title }}</a>"
理想情况下会产生:
"Follow John on Twitter and Facebook and see their work at example url"
问题:
我应该只使用 django/python 来执行此操作,还是由 jQuery 更好地处理?- 如果
"accounts"
以列表形式出现,如何将其输出为逗号分隔列表? - 使用此方法是否有任何我应该注意的安全问题?