2016-05-14 31 views
0

我正在爲一些小型python函數構建一個Django web界面(過度殺傷 - 我知道!)。其中一個轉換存儲在Django根目錄中的txt文件。它的目標是。在Django中引用文件views.py

我有幾個地方以下設置:

with open('file.csv','r') as source: 
... 

然而,如果沒有設置我的機器上的整個目錄(例如/家庭/ ...),但無法找到該文件。我試圖把它放在靜態目錄中(理想情況下,我希望人們能夠在稍後階段下載文件),但同樣的問題。

你如何使用Django中的文件?解決上述問題的最佳做法是什麼,以便稍後有人下載它?

+0

如果您希望用戶稍後下載文件,則可以將其路徑存儲在模型中。 – alix

回答

1

如果你只需要在路徑:

import os 
from django.conf import settings 

file_path = os.path.join(settings.STATIC_ROOT, 'file.txt') 

with open(file_path, 'r') as source: 
    # do stuff 
  • 請注意,你需要把你的文件,在這樣的目錄:程序my_app /靜態/ my_app應用/ file.txt的

有關更多信息,請參閱Django docs

+0

這樣做,我可以打開它並使用它嗎? – NickP

+0

是的。你會.. –

+0

每次安裝應用程序時,你需要定義靜態根嗎?如果我將靜態根權限定義到應用程序的靜態目錄,我只能這樣做。所以這不適用於多個應用程序? – NickP