为Python网络应用设置环境变量
我需要设置一些环境变量,这样我就可以运行一个使用PostgreSQL的数据库程序。
export PGDATA="/home/masi/postgres/var"
export PGPORT="12428"
我知道可以通过把文件添加到.zshrc来解决这个问题。不过,我不确定这样做是否正确。
怎么添加环境变量呢?
2 个回答
3
把这个放在你应用的主页面里的某个地方:
import os
os.environ["PGDATA"] = "/home/masi/postgres/var"
os.environ["PGPORT"] = 12428
不过,难道没有更好的方法来在你使用的框架中设置这个吗?
4
你只需要在启动服务器的脚本中设置PGDATA这个变量。客户端只关心端口号。
如果你想在一个非标准端口上运行它,那你必须设置端口值。我想你应该有个好理由不直接使用默认端口吧?如果你使用默认端口(5432),那么根本不需要设置任何参数,它就会自动工作。
如果你在不同的端口上运行,你需要做两个修改:
- 在postgresql.conf文件中,把port=的值改成你想要的新端口,然后重启数据库服务器。
- 在你的django项目的settings.py文件中,把DATABASE_PORT的值改成你想要的新端口。
对于这些简单的配置选项,你绝对不需要使用环境变量——避免使用它们会让你的生活更轻松。