1

これが私の.bash_profile

PYTHONPATH=".:/home/miki725/django/django:$PYTHONPATH"
export PYTHONPATH

だから私はpythonを開きますが、追加するディレクトリ.bash_profileは最初のものではありません:

Python 2.4.3 (#1, Sep 21 2011, 20:06:00) 
[GCC 4.1.2 20080704 (Red Hat 4.1.2-51)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> for i in sys.path:
...     print i
... 

/usr/lib/python2.4/site-packages/setuptools-0.6c9-py2.4.egg
/usr/lib/python2.4/site-packages/flup-1.0.2-py2.4.egg
/usr/lib/python2.4/site-packages/MySQL_python-1.2.3c1-py2.4-linux-i686.egg
/usr/lib/python2.4/site-packages/django_form_utils-0.1.7-py2.4.egg
/usr/lib/python2.4/site-packages/mechanize-0.2.1-py2.4.egg
/usr/lib/python2.4/site-packages/Django-1.2.1-py2.4.egg
/usr/lib/python2.4/site-packages/mercurial-1.6-py2.4-linux-i686.egg
/usr/lib/python2.4/site-packages/lxml-2.2.7-py2.4-linux-i686.egg
/usr/lib/python2.4/site-packages/django_registration-0.7-py2.4.egg
/usr/lib/python2.4/site-packages/sorl_thumbnail-3.2.5-py2.4.egg
/usr/lib/python2.4/site-packages/South-0.7.2-py2.4.egg
/usr/lib/python2.4/site-packages/django_keyedcache-1.4_1-py2.4.egg
/usr/lib/python2.4/site-packages/django_livesettings-1.4_3-py2.4.egg
/usr/lib/python2.4/site-packages/django_app_plugins-0.1.1-py2.4.egg
/usr/lib/python2.4/site-packages/django_signals_ahoy-0.1_2-py2.4.egg
/usr/lib/python2.4/site-packages/pycrypto-2.3-py2.4-linux-i686.egg
/usr/lib/python2.4/site-packages/django_threaded_multihost-1.4_0-py2.4.egg
/usr/lib/python2.4/site-packages/PIL-1.1.7-py2.4-linux-i686.egg
/usr/lib/python2.4/site-packages/pyOpenSSL-0.11-py2.4-linux-i686.egg
/usr/lib/python2.4/site-packages/ZSI-2.0_rc3-py2.4.egg
/usr/lib/python2.4/site-packages/PyXML-0.8.4-py2.4-linux-i686.egg
/usr/lib/python2.4/site-packages/pyquery-0.6.1-py2.4.egg
/usr/lib/python2.4/site-packages/pip-1.0.1-py2.4.egg
/usr/lib/python2.4/site-packages/virtualenv-1.6.1-py2.4.egg
/usr/lib/python2.4/site-packages/simplejson-2.1.6-py2.4-linux-i686.egg
/home/miki725
/home/miki725/django/django
/usr/lib/python24.zip
/usr/lib/python2.4
/usr/lib/python2.4/plat-linux2
/usr/lib/python2.4/lib-tk
/usr/lib/python2.4/lib-dynload
/usr/lib/python2.4/site-packages
/usr/lib/python2.4/site-packages/Numeric
/usr/lib/python2.4/site-packages/PIL
/usr/lib/python2.4/site-packages/gtk-2.0
>>> 
>>> 
>>> 
>>> 
>>> import django
>>> django.__file__
'/usr/lib/python2.4/site-packages/Django-1.2.1-py2.4.egg/django/__init__.pyc'
>>> 

Pythonパスに追加するにはどうすれ.bash_profileばよいので、最初になります。これは共有ホスティング用です。システムのデフォルトを使用する代わりに、django インストールをインポートできるようにする必要があります。

ありがとうございました

4

4 に答える 4

2

あなたの最善の策はsys.path、実行時に変更することです。共有ホスティング環境では、これを .wsgi ファイルで行うのが一般的です。次のようなことができます。

import sys
sys.path.insert(0, '/home/miki725/django/django')

に追加export PYTHONSTARTUP=/home/miki725/.pythonrcする場合.bash_profile、そのファイルを追加することができ.pythonrc、インタラクティブなプロンプトが表示される前に実行されます。

于 2011-12-01T07:48:26.377 に答える
0

他の人が示しているsys.pathように、Pythonで直接次のように変更します。

sys.path.insert(0,"/home/miki725/django/django")

しかし、 virtualenvはあなたが探しているソリューションだと思います。このツールを使用すると、分離されたPython環境を作成できます。

于 2011-12-01T08:12:30.717 に答える
0

sys.path別の方法として、インタープリターから直接変更できます。

sys.path.insert(0,"/home/miki725/django/django")
于 2011-12-01T07:47:13.823 に答える
0

サイトモジュールがインポートさPYTHONPATHれたときに変更されていると思います。userモジュールを見て、ユーザー固有の構成を提供してください (基本的には、関心のあるディレクトリを に追加するだけです)。sys.path

注:userモジュールは現在非推奨ですが、python 2.4 ではこれで動作するはずです。

編集: 完全を期すために、python >= 2.6 (userモジュールは非推奨) の場合、ここで説明されているようusercustomize.pyに、ローカル ディレクトリにファイルを作成する必要があります。site-packages

于 2011-12-01T07:42:00.327 に答える