我正在尝试将PYTHONPATH
两个Django模块(1.4版)的位置附加到我的ORM模型上。这是代码:
sys.path.append('/path/project1')
sys.path.append('/path/project2')
当我尝试按如下方式设置Django环境时:
import settings
setup_environ(settings)
仅加载project1
的设置。我认为问题是两个模型分别包含一个名为settings.py
的文件,因此,名称冲突。我无法修改模块。
如何将两个模块设置添加到Django Enviroment?
答案 0 :(得分:2)
我取消删除此答案以供将来参考。下面的解决方案允许从具有相同名称的文件导入两个不同的模式,但不允许在一个解释器中运行两个Django项目(请参阅this comment和this comment)。
您可以尝试将项目转换为python包
1.将空__init__.py添加到/ path / project1 /和/ path / project2 /
2.
sys.path.append('/path/')
sys.path.append('/path/project1/')
sys.path.append('/path/project2/')
import project1.settings
import project2.settings
setup_environ(project1.settings)
setup_environ(project2.settings)
1)在/ path /中创建一个目录,其中包含指向设置文件的符号链接
cd /path/
mkdir setting_links
cd setting_links
ln ../project1/settings.py settings_1.py
ln ../project2/settings.py settings_2.py
2)将项目和目录放在sys.path
sys.path.append('/path/setting_links/')
sys.path.append('/path/project1/')
sys.path.append('/path/project2/')
import settings_1
import settings_2
setup_environ(settings_1)
setup_environ(settings_2)