2012-02-11 79 views
3

为了更好地调试我的api,我想创建一个调试页面,该页面逐行显示响应json obj的所有细节。我认为这可以通过代码或Django模板来完成。什么是最简单的方法呢?使用Django模板填充json到html

https://developers.facebook.com/tools/explorer/?method=GET 例如,facebook explorer会列出响应json obj的详细信息。

{ 
    "id": "xxx", 
    "name": "xxx", 
    "first_name": "xxx", 
    "last_name": "xxx", 
    "link": "xxx", 
    "username": "xxx", 
    "hometown": { 
    "id": "xxx", 
    "name": "xxx" 
    }, 
    "location": { 
    "id": "xxx", 
    "name": "xxx" 
    }, 
    "bio": "Drink Coffee in Whitehorse", 

    "work": [ 
    { 
     "employer": { 
     "id": "xxx", 
     "name": "xxx" 
     }, 
     "location": { 
     "id": "xxx", 
     "name": "xxx" 
     }, 
     "position": { 
     "id": "xxx", 
     "name": "xxx" 
     }, 
     "start_date": "2009-01", 
     "end_date": "0000-00" 
    }, 
} 

回答

8

你只需要调用json.dumps()indent关键字参数等于空间由漂亮的印刷缩进产生JSON的数量。

例如:

json.dumps(spam_and_eggs, indent=4) 
2

我建议在你的HTML中使用<pre></pre>,使您的JSON看起来很漂亮。

HTML:

<!DOCTYPE html> 
    <html lang="en"> 
    <head> 
     <meta charset="UTF-8"> 
     <title>Title</title> 
    </head> 
    <body> 
     <pre>{{ info|safe }}</pre> 
    </body> 
</html>