2016-08-30 4 views
4

У меня есть проект Django, работающий на ОС RHEL 7. Проект находится на пути /root/project. Проект размещен на сервере httpd. Теперь я пытаюсь получить доступ к файлу со стороны каталога, например /root/data/info/test.txtКак получить доступ к файлу каталога за пределами проекта django?

Как мне получить доступ к этому пути в views.py, чтобы я мог читать и записывать файл, который находится вне каталога проекта? Я попытался добавить путь в sys.path, но это не сработало. Разрешение на чтение и запись также предоставляется файлу.

+0

Пробовали ли вы "../data/info/test.txt"? –

+1

Вы пробовали использовать полный путь? –

+0

Почему вы хотите что-то сделать вне каталога проекта? Я имею в виду выбрать «читать/записывать файл внутри каталога проекта» (создать файл, если он отсутствует), и для вашего git/svn (система управления версиями), «игнорировать файл от получения» в проекте –

ответ

3

Добавьте следующие строки в settings.py

import os 
.. 
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) 
FILES_DIR = os.path.abspath(os.path.join(BASE_DIR, '../data/info')) 

Затем вы можете использовать на ваш взгляд

from django.conf import settings 
import os 
.. 
file_path = os.path.join(settings.FILES_DIR, 'test.txt') 
+0

Его работа .. спасибо! –

Смежные вопросы