我正在将我的SQL迁移到Postgresql,因为我想在与我的生产相同的环境中开发。
我安装了Postgres,并且能够设置我的数据库yml文件,使rake db:create:all
工作没有问题。
然而,在我推动之前,我意识到postgresql数据库的用户名和密码只能在我的电脑上使用。即我在计算机上创建了登录角色。当我的朋友也在开发应用程序时,提取代码,他将不会在我的计算机上创建我创建的用户名和密码。
他是否也应该创建相同的登录角色?或者有没有办法将用户名/密码留空,以便开发的每个人都可以访问该应用程序?更重要的是,这种情况的最佳做法是什么?
我在Windows上开发,他在Mac上。
我的database.yml:遗漏了用户名和密码。
development:
adapter: postgresql
encoding: unicode
database: volatility_development
pool: 5
timeout: 5000
host: localhost
test:
adapter: postgresql
encoding: unicode
database: volatility_test
pool: 5
timeout: 5000
host: localhost
production:
adapter: postgresql
encoding: unicode
database: volatility_production
pool: 5
timeout: 5000
答案 0 :(得分:2)
一种可能性是使用erb和环境变量的组合,例如:
development:
username: <%= ENV['USERNAME'] %>
password: <%= ENV['PASSWORD'] %>
adapter: postgresql
encoding: unicode
database: volatility_development
pool: 5
timeout: 5000
host: localhost
然后您可以执行以下任一操作:
USERNAME=bob PASSWORD=secret rails s
将以下内容添加到 .bashrc
export USERNAME=bob
export PASSWORD=secret