Я хочу открыть файл из приложения Django, используя open()
.Проблема в том, что open()
, похоже, использует любой каталог, из которого я запускаю команду runserver
, в качестве корня.
Например, если я запускаю сервер из каталога с именем foo, такого как
$pwd
/Users/foo
$python myapp/manage.py runserver
open()
использует foo
в качестве корневого каталога.
Если я сделаю это вместо *
$cd myapp
$pwd
/Users/foo/myapp
$python manage.py runserver
myapp
будет корневым каталогом.
Давайтескажем, структура моей папки выглядит следующим образом
foo/myapp/anotherapp
Я хотел бы иметь возможность открыть файл, расположенный в foo/myapp/anotherapp
, из скрипта, также расположенного в foo/myapp/anotherapp
, просто сказав
file = open('./baz.txt')
Теперь, в зависимости от того, откуда я запускаю сервер, я должен сказать либо
file = open('./myapp/anotherapp/baz.txt')
, либо
file = open('./anotherapp/baz.txt')