2015-12-02 82 views
-1

我有一個JSON文件,它位於我的django項目文件夾之外,我想閱讀它並將它用在我的django項目文件夾中的index.html中。如何讀取文件並將其填充到Django的HttpResponse中?

我在某處讀到我可以通過views.py(我使用CreateView作爲我的index.html)傳遞文件,但我找不到它了。

我發現this但它沒有給出任何解釋。任何人都可以給我一個關鍵字或提示在文檔中找到它或我可以谷歌,我現在有點失落?

Thanjks提前!

編輯

感謝Chathan Driehuys和thisthis我發現瞭如何讀取一個JSON並將其加載到字典中。這裏是我的設置:

import json 
class MyCreateView(CreateView): 

    def get_context_data(self, **kwargs): 
     context = super(MyCreateView, self).get_context_data(**kwargs) 

     with open('/path/to/my/JSON/file/my_json.cfg', 'r') as f: 
        myfile = json.load(f) 
        context['my_json'] = my_data 
+1

你所說的「讀它在我的index.html的使用它」是什麼意思?您是要嘗試渲染JSON文件中的數據還是嘗試讀取JSON文件的內容並使用它在代碼中執行其他操作? –

+0

我想使用JSON文件的內容,並用它來做我的javascript代碼中的其他內容 – Tom

回答

1

我會加入一個get_context_data方法將CreateView您使用的做到這一點。在該方法中,您可以打開JSON文件並解析所需的數據,然後將其傳遞給您的視圖。

class MyCreateView(CreateView): 

    def get_context_data(self, **kwargs): 
     context = super(MyCreateView, self).get_context_data(**kwargs) 

     with open('my_json_file', 'r') as f: 
      # parse content from your JSON file and put it in 
      # the context dictionary 
      # context['json_item'] = my_val 

     return context 

json_item那麼將是一個模板可通過使用{{ json_item }}

+0

真棒謝謝,這就是我正在尋找的,現在我只需要弄清楚語法是如何工作的,謝謝你許多! – Tom

相關問題