Ruby on rails Rails:配置变量的存放位置
我的团队正在维护一个Rails应用程序。以前的开发人员决定将一些配置变量(如facebook应用程序id、twitter应用程序id)作为env变量。但这并不是万能的。如果我们有两个应用程序(测试和生产),我们只能使用一个硬编码配置(或手动更改)。将这些变量放入版本控制也是一种很好的做法Ruby on rails Rails:配置变量的存放位置,ruby-on-rails,Ruby On Rails,我的团队正在维护一个Rails应用程序。以前的开发人员决定将一些配置变量(如facebook应用程序id、twitter应用程序id)作为env变量。但这并不是万能的。如果我们有两个应用程序(测试和生产),我们只能使用一个硬编码配置(或手动更改)。将这些变量放入版本控制也是一种很好的做法 这样做对吗?如果没有,正确的方法是什么?我们在两个应用程序中使用以下解决方案 将配置变量存储在gem的yml文件中 应用程序通过初始化器配置为在生产和开发模式下使用不同的yml文件 在生产服务器上,包含yml文
这样做对吗?如果没有,正确的方法是什么?我们在两个应用程序中使用以下解决方案
namespace :settings do
task :symlink, roles: :app do
run "ln -s /path_to_settings/#{rail_env} #{current_path}/config/settings"
end
end
after "deploy:create_symlink", "settings:symlink"
“硬编码”是什么意思?如果您将它们放入代码中,那么它们将被硬编码。环境变量是一个不错的选择。