如何使用Django从.py文件中读取媒体文件?

zjm*_*126 2 python django file-io

我可以这样读取a.txt文件:

text = open('a.txt', 'rb').read()
Run Code Online (Sandbox Code Playgroud)

但当我把a.txtmedia文件夹中,这不起作用:

text = open('/media/a.txt', 'rb').read()
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

IOError at /
[Errno 13] file not accessible: '/media/a.txt'
Run Code Online (Sandbox Code Playgroud)

如何从media目录中读取文件?

Ger*_*ert 7

要更通用(并确保使用媒体文件夹),您可以将其更改为:

import os
from django.conf import settings
text = open(os.path.join(settings.MEDIA_ROOT, 'a.txt'), 'rb').read()
Run Code Online (Sandbox Code Playgroud)