2013-02-25 65 views
0

我需要從URL抓取數據這樣我應該如何在Django模板中填充JSON數據?

http://www.example.com/data?format=json

,其輸出會像

student_details: { 
    terms: { 
     subjects: { 
      assigments: { 
       id:11, name:"ass_1" 
      } 
     } 
    } 
} 

上面是不是有效的JSON,它只是一個例子來說明如何json會像。

我想知道什麼是在詳細視圖頁面中顯示上述數據的最佳方式。

我的意思是我需要編碼每一列,並在那裏放置一個佔位符? 或者我應該有一列,並通過所有的行循環?

我應該怎麼做?

我也困惑我應該如何顯示嵌套對象,條件assigments等

如果有人能在這會是很好的指向正確的方向我。編輯: Django將創建JSON。我需要的是僅在jquery或html中生成詳細信息頁面。我不想包含任何服務器端渲染。這將是一個靜態的HTML頁面,但從JSON獲取其數據。

回答

2

JSON幾乎與Python中的字典列表同義,所以沒有什麼特別的,你需要做的是迭代Django模板中的key:value對。聽起來你需要熟悉Django模板語言,特別是{% for %}標籤:https://docs.djangoproject.com/en/1.10/ref/templates/builtins/#for

+0

對不起,我沒有提到。 django將創建json。但我需要僅在jquery或html中生成詳細信息頁面。我不想包含任何服務器端。它會靜態html頁面,但從json – user192082107 2013-02-25 02:40:29

+1

獲得其數據啊。然後,您需要使用jQuery循環使用JSON,並將所需的鍵/值插入HTML中,或者隨時創建它。或者,如果您需要完全基於JavaScript的解決方案,則可能需要查看http://handlebarsjs.com/。 – Brandon 2013-02-25 02:51:28

+0

@Brandon找不到您提供的鏈接。 – user2253546 2017-05-14 20:28:01

0

如果我理解正確,我不認爲你想要做什麼可以做,因爲,正如你所說,你不'不想包含任何服務器端工作。 Django模板渲染髮生在事物的服務器端,當jQuery獲取您的django生成的JSON時,模板已經被渲染,傳遞迴客戶端並在瀏覽器中呈現。

我會建議你找到一個類似的模板解決方案,但客戶端,如underscore.js。你想要做的是定義你想用JSON填充的HTML模板,以及你的ajax調用的成功回調,在DOM上插入它的渲染結果。

相關問題