过度使用sitecustomize.py:用.bash_profile代替?

1 投票
1 回答
933 浏览
提问于 2025-04-17 06:15

也许是因为我对Python比对命令行更熟悉,所以我选择在这个地方添加我的 sys.path 列表:/usr/lib/python[x.x]/sitecustomize.py

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 有一部分提到,"一个特别的 Python 提示符",建议你这样做,但建议使用你的 .bash_profile 脚本来完成这个任务。使用这个方法相比于 sitecustomize.py 脚本有什么明显的好处吗?显然,我已经完成了这个,所以如果要我去找一篇关于写命令行代码的文章,得有一些很有说服力的理由。

1 个回答

1

有时候,你在使用的电脑上可能没有超级用户的权限。在这种情况下,你就不能修改 /usr 这个文件夹,所以你需要知道如何在你个人的配置文件中设置环境变量,比如 ~/.bashrc、~/.profile 或 ~/.bash_profile。具体用哪个文件取决于你的系统。

其实这并不难。你只需要添加一些内容(我觉得!)像下面这样:

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

export PYTHONPATH DJANGO_SETTINGS_MODULE

撰写回答