たとえば、JSONファイルがあります
{
"Google":{
"Web":"www.web.de",
"Apps":{
"Drive": "DriveLink",
"Dropbox": "DropboxLink"
},
"Google Main":"http://mail.google.com",
"G+":"http://plus.google.com"
},
"Social":{
"Facebook":"http://www.facebook.de",
"G+":"https://plus.google.com",
"Xing":"http://www.xing.de",
"LinkedIn":"http://www.linkedin.com",
"Tumblr":"http://www.tumblr.com"
},
"Fun":{
"Reddit":"http://www.reddit.com"
}
}
ご覧のとおり、Google セクションの下に、Apps という名前のネストされたセクションがあります。
CherryPy を使用して、次のようにこの JSON オブジェクトを linksList という名前で引き渡します。
@cherrypy.expose
def index(self):
linksFile = open('links.json', 'r')
linksList = json.load(linksFile)
template = jinjaEnv.get_template('index.html')
return template.render(linksList=linksList)
私が望むのは、次のようにレンダリングすることです:
- グーグル
- Web (リンクとして)
- Google メイン
- G+
- アプリ
- ドライブ
- ドロップボックス
- 社交
- フェイスブック
- G+
- 興
等々
私が理解していないのは、このネストされた「アプリ」のようなオブジェクトを再帰的にレンダリングすることです