免責聲明:我完全不熟悉解析和訪問JSON,我只是開始獲得django的繩索。使用Django訪問JSON數據
詳情:
我試圖訪問內部的JSON對象我在Django模板獲得的一些數據:
例如JSON:
{"entry":[
{"id":"1234567","hash":"1234567",
..."name":{"givenName":"John","familyName":"Doel","formatted":"John H. Doe"},
..."currentLocation":"Los Angeles, CA",
..."emails":[{"primary":"true","value":"[email protected]"}],
..."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 }}
和{{ gravatar_links.data }}
,我可以看到用戶的名稱和JSON數據描述。
目標:
我想訪問特定的鍵在JSON對象,即"accounts"
和"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"
以列表形式出現,如何將它輸出爲逗號分隔列表? - 使用這種方法應該注意哪些安全問題?
我可能只是使用Python,這和保存的結果,因爲它是不太可能改變。數據庫訪問比JSON請求更快...多數民衆贊成只是我的2C雖然 – 2013-03-17 19:10:36