django导入搜索路径

时间:2009-06-11 04:51:37

标签: python django

我在vim中为python和django配置自动完成功能。其中一个问题是我需要设置一个环境变量DJANGO_SETTINGS_MODULE = myapp.settings。 django教程指出

  

DJANGO_SETTINGS_MODULE的值   应该是Python路径语法,例如   mysite.settings。请注意   设置模块应该在   Python导入搜索路径。

http://docs.djangoproject.com/en/dev/topics/settings/

但是,如果您的应用不在导入搜索路径中,那么如何才能实现它呢?

4 个答案:

答案 0 :(得分:4)

尝试在运行时将路径附加到sys.path。

import sys
sys.path.append('/path/to/myapp')

答案 1 :(得分:3)

.bashrc.bash_profile

中添加此内容

export PATH=$PATH:/path/to/django/bin

export PYTHONPATH=$PYTHONPATH:/path/to/myapp

答案 2 :(得分:3)

三种选择。

  1. 设置PYTHONPATH环境变量以包含应用程序的目录。确保它有一个__init__.py文件。

  2. 在site-packages中创建一个.pth文件,指向应用程序的目录。

  3. 在站点包中安装您的应用程序。

  4. 这是“安装”Python模块的三种方式。有关更多信息,请阅读site模块。

答案 3 :(得分:0)

从包含带模块的dir的路径导入(带__init__.py文件)

示例:

dm@batman:~/.local/15/lib/python2.7/site-packages $ pwd
/home/d/dm/.local/15/lib/python2.7/site-packages

dm@batman:~/.local/15/lib/python2.7/site-packages $ ls
django  Django-1.5.11-py2.7.egg-info

dm@batman:~/.local/15/lib/python2.7/site-packages $ python
Python 2.7.3 (default, Feb 27 2014, 19:58:35) 
[GCC 4.6.3] on linux2
>>> import sys
>>> sys.path.append("/home/d/dgaloc/.local/15/lib/python2.7/site-packages")
>>> import django
>>> django.VERSION
(1, 5, 11, 'final', 0)