Ric*_*wis 12 ruby database ruby-on-rails heroku
我很好奇如何database.yml在Rails 4应用程序中正确设置我的文件.
这不是我真正详细研究过的东西,因为它在部署到Heroku时似乎都能正常工作,但我现在想要了解它,并注意到格式从Rails 4.0变为4.1.例如
4.0.2
development:
adapter: mysql2
encoding: utf8
database: my_app_development
pool: 5
username: root
password:
test:
adapter: mysql2
encoding: utf8
database: my_app_test
pool: 5
username: root
password:
production:
adapter: mysql2
encoding: utf8
database: ymca_gym_production
pool: 5
username: root
password:
Run Code Online (Sandbox Code Playgroud)
4.1.0
default: &default
adapter: mysql2
encoding: utf8
pool: 5
username: root
password:
socket: /var/run/mysqld/mysqld.sock
development:
<<: *default
database: my_app_development
test:
<<: *default
database: my_app_test
# On Heroku and other platform providers, you may have a full connection URL
# available as an environment variable. For example:
#
# DATABASE_URL="mysql2://myuser:mypass@localhost/somedatabase"
#
# You can use this database configuration with:
#
# production:
# url: <%= ENV['DATABASE_URL'] %>
#
production:
<<: *default
database: my_app_production
username: my_app
password: <%= ENV['MY_APP_DATABASE_PASSWORD'] %>
Run Code Online (Sandbox Code Playgroud)
我的问题是
url: <%= ENV['DATABASE_URL'] %>如评论所示,我应该用于制作吗?您发布的第二个database.yml实际上与第一个相同,它只是从开发块复制值。
回答您的其他问题:
1)我应该在所有环境中设置用户名和密码吗
如果您愿意,您可以这样做,或者您也可以像上面那样保留它,它从一个块中获取所有凭据。
2)如果我使用 Clear DB 和 Heroku 作为我的数据库,那么我应该取消注释吗
heroku 实际上完全忽略了这个文件(无论如何都不应该将其签入源代码管理)。Heroku 有自己的机制来处理数据库,您可以在此处阅读更多信息: https: //devcenter.heroku.com/articles/heroku-postgresql
本质上,将“heroku 的数据库”和您在此文件中定义的本地数据库完全不同地对待。
| 归档时间: |
|
| 查看次数: |
19215 次 |
| 最近记录: |