Я использую Django 1.7 поверх Python 2.7 и заметил странное поведение на моем рабочем хосте (Webfaction) по сравнению с машиной разработки (mac os x).Текущий каталог (os.getcwd) из Django определен как?
На моей машине Дев, когда я получаю текущую рабочую директорию через CMDS
import os
dirspot = os.getcwd()
print dirspot
я получаю местоположение manage.py исполняемого файла. Когда я делаю это на машине хозяина (webfaction), я получаю diff-ответ в зависимости от того, запущен ли сайт Django, а также с помощью оболочки Django.
Так с моим проектом (и manage.py), расположенного по адресу:
/home/ross/webapps/djangoarea/myproj
Запуск
python manage.py shell
то выше os.getcwd() Я получаю
/home/ross/webapps/djangoarea/myproj
Но если я поместил ту же команду в view.py и запустил свой проект, я получаю
/home/ross/
Я предполагаю, что это связано с apache2 и wsgi, выполняющим django, а не с manage.py, вызывающим его. Кто-нибудь знает, как заставить это быть последовательным?
Заранее спасибо, Росс.
Thx за предложение. В Django «script» - это исполняемый файл manage.py, поэтому я думал, что там должен быть последовательный результат, указывающий его местоположение. Тем не менее, никто не прозревает по абспуту и реальной траектории, и это выглядит хорошо, поэтому используется так, что хорошо работает. Интересно, что в оболочке manage.py нужно указать ссылку на файл подчеркивания или он не будет работать. (не могу набрать это здесь, я вижу, поскольку символы подчеркивания удаляются) :) – RossGK