Django 在每个服务器中保持不同的数据库设置
Django keep different database setting in each servers
我正在部署 capistrano
到 Django 项目。
并且数据库设置不同于 local
到 server
。
所以一开始我在deploy.rb中设置了linked_files。
append :linked_files, "app/settings.py"
使用此设置,部署不会更新服务器上的 app/settings.py
。
不过有时候,我需要给这个文件添加应用设置,所以它应该同步到服务器的。
使用工具部署django项目并在每台服务器上只保留数据库设置有什么好的做法吗??
在这样的设置中,一种方法是使用 app/settings/local.local
和 app/settings/prod.py
文件。 make 目标应该将 app/settings/local.local
文件复制到 app/settings/local.py
并使用该文件。这样在设置中你总是有一个 .py 文件。 local.local 的所有更改都与 git 同步。
local.py应该加上git忽略。 __init__.py
设置文件夹中应该从所有 py 文件导入。
设置
|
| -- __init__
.py
| -- local.local
| -- prod.py
像这样。
我正在部署 capistrano
到 Django 项目。
并且数据库设置不同于 local
到 server
。
所以一开始我在deploy.rb中设置了linked_files。
append :linked_files, "app/settings.py"
使用此设置,部署不会更新服务器上的 app/settings.py
。
不过有时候,我需要给这个文件添加应用设置,所以它应该同步到服务器的。
使用工具部署django项目并在每台服务器上只保留数据库设置有什么好的做法吗??
在这样的设置中,一种方法是使用 app/settings/local.local
和 app/settings/prod.py
文件。 make 目标应该将 app/settings/local.local
文件复制到 app/settings/local.py
并使用该文件。这样在设置中你总是有一个 .py 文件。 local.local 的所有更改都与 git 同步。
local.py应该加上git忽略。 __init__.py
设置文件夹中应该从所有 py 文件导入。
设置
|
| -- __init__
.py
| -- local.local
| -- prod.py
像这样。