Форум сайта python.su
Всем привет.
Тема следующая:
1) есть приложение (например) “debug_toolbar” в котором есть код: “import debug_toolbar.urls”
2) в корень проекта ложим каталог “debug_toolbar” – это для того что бы импорт проходил без ошибок.
3) Но для того что бы не ложить это (2) в корневой каталог нужно или установить приложение глобально в систему или через virtualenvwrapper и подобное, но если я не хочу устанавливать, а хочу положить в отдельный каталог проекта например пусть это будет каталог apps_third/debug_toolbar, то все сломаеться (в смысле (1) import debug_toolbar.urls).
Какие могут быть еще варианты решения, что бы не загромождать корневой каталог проекта, потому что подобных приложений может быть много, которые в своем коде имею код (1), который изменять не желательно.
(Вариант с симлинками не подходят)
Если нет вариантов то так и скажите :)
Спасибо.
ps
Надоело сваливать все в корень
Офлайн
ну и добавь в sys.path apps_third каталог
Офлайн
В settings.py пропиши следующее:
import os.path
import sys
PROJECT_ROOT = os.path.dirname(os.path.realpath(__file__))
sys.path.append(os.path.join(PROJECT_ROOT, 'apps'))
Офлайн
Про вариант
slav0nicзнаю, но он не работает если в системе глобально установлен пакет то есть например:
ну и добавь в sys.path apps_third каталог
lorienне подходит так так в начале топика я исключил этот вариант
Ещё можно virtualenv использовать.
Офлайн