Python 是否过度使用sitecustomize.py:.bash\u配置文件?

Python 是否过度使用sitecustomize.py:.bash\u配置文件?,python,django,shell,.bash-profile,Python,Django,Shell,.bash Profile,也许这是因为我更习惯于使用python而不是shell,但我选择以以下方式添加到/usr/lib/python[x.x]/sitecustomize.py中的sys.path列表中: base = '/home/droogans/py/' locs = ['foo','django'] for loc in locs: sys.path.insert(0, base + loc) 现在我在下面添加了一个try:except块,以防我想在不使用python manage.py she

也许这是因为我更习惯于使用python而不是shell,但我选择以以下方式添加到
/usr/lib/python[x.x]/sitecustomize.py中的
sys.path
列表中:

base = '/home/droogans/py/'

locs = ['foo','django']

for loc in locs:
    sys.path.insert(0, base + loc)
现在我在下面添加了一个
try:except
块,以防我想在不使用
python manage.py shell的情况下测试模板

try:
    from django.core.management import setup_environ
    from website_foobar import settings
    setup_environ(settings)
except ImportError:
    pass

DjangoBook中有一节“”,建议您这样做,但建议您使用
.bash\u profile
shell脚本来完成任务。使用它而不是使用
sitecustomize.py
脚本是否有明显的好处?显然,我已经完成了,所以我必须有一些令人信服的证据来谷歌一篇关于编写shell代码的文章。

有时候你在使用的机器上不会有超级用户状态。在这种情况下,您将无法修改
/usr
,因此有必要了解如何在您的个人~/.bashrc或~/.profile或~/.bash\u配置文件中设置环境变量。(要使用的特定文件取决于您的系统)

这不难做到。你需要补充的(我想!)是

PYTHONPATH=$HOME/py/foo:$HOME/py/django
DJANGO_SETTINGS_MODULE=website_foobar.settings

export PYTHONPATH DJANGO_SETTINGS_MODULE

有时,您在使用的机器上没有超级用户状态。在这种情况下,您将无法修改
/usr
,因此有必要了解如何在您的个人~/.bashrc或~/.profile或~/.bash\u配置文件中设置环境变量。(要使用的特定文件取决于您的系统)

这不难做到。你需要补充的(我想!)是

PYTHONPATH=$HOME/py/foo:$HOME/py/django
DJANGO_SETTINGS_MODULE=website_foobar.settings

export PYTHONPATH DJANGO_SETTINGS_MODULE

嗯,看起来很无痛。我忘了在我的
sudogedit/usr/lib/python[x.x]/…
命令中写下额外的步骤,这是一个让我有些紧张的小细节。感谢您指出这一区别。那么您的意思是,在我的机器上登录到未经认证的“来宾”帐户的用户将有权访问django模板…这是否值得关注?如果您更改了
其他
读取/执行
django目录上的权限,这样他们就无法读取您的文件。我认为它只是他们的
sys.path
中一个未使用的目录。但是,这仍然不是设置多用户机器的理想方式。我将它放在
~/.bashrc
下,其中只有
export PYTHONPATH=~/py/django:~/py/foo
一行。最棒的是,它适用于我的2.6和3.1 python会话。谢谢,嗯。这看起来是无痛的。我忘了在我的
sudogedit/usr/lib/python[x.x]/…
命令中写下额外的步骤,这是一个让我有些紧张的小细节。感谢您指出这一区别。那么您的意思是,在我的机器上登录到未经认证的“来宾”帐户的用户将有权访问django模板…这是否值得关注?如果您更改了
其他
读取/执行
django目录上的权限,这样他们就无法读取您的文件。我认为它只是他们的
sys.path
中一个未使用的目录。但是,这仍然不是设置多用户机器的理想方式。我将它放在
~/.bashrc
下,其中只有
export PYTHONPATH=~/py/django:~/py/foo
一行。最棒的是,它适用于我的2.6和3.1 python会话。谢谢