我正在尝试处理django项目中的一些json
和csv
文件,但从未找到它们。
我创建了一个静态文件夹,并在其中创建了一个新的名为data的文件夹。但是当我调用它时,消息始终是相同的,它找不到我的文件的路径。
[错误2]文件b'data / data.csv'不存在:b'data / data.csv'
在settings.py
内部,我有这个
STATIC_URL = '/static/'
STATICFILES_DIRS =[
os.path.join(BASE_DIR, 'static'),
]
有人知道我在做什么错吗?
我如何调用csv
文件的示例:
def dataframex():
data_csv = pd.read_csv('data/data.csv')
print(data_csv)
谢谢!
答案 0 :(得分:3)
pandas.read_csv()
不了解Django的staticfiles
配置。
假设您使用的是本地静态文件,而不是由S3支持或更深奥的东西,您可以使用finders.find()
to locate the real file on disk:
from django.contrib.staticfiles import finders
def dataframex():
csv_path = finders.find('data/data.csv')
data_csv = pd.read_csv(csv_path)
print(data_csv)
但是,对于不需要像这样的静态文件直接提供给用户的情况,最好将它们存储在应用程序目录中。
假设myapp/views.py
包含上述内容,则可以将data.csv
移至myapp/data.csv
,然后使用
csv_path = os.path.join(os.path.dirname(__file__), 'data.csv')
找到文件。