Ruby on rails Rails:从sqlite开始->;博士后
我用sqllite构建了一个rails应用程序,我想把它推给heroku。我知道我必须使用postgres,所以我必须在gem文件中添加生产使用Ruby on rails Rails:从sqlite开始->;博士后,ruby-on-rails,ruby,sqlite,postgresql,heroku,Ruby On Rails,Ruby,Sqlite,Postgresql,Heroku,我用sqllite构建了一个rails应用程序,我想把它推给heroku。我知道我必须使用postgres,所以我必须在gem文件中添加生产使用gem'pg'。但我不知道如何更改database.yml 我的database.yml应该是什么样子?它目前的样子: development: adapter: sqlite3 database: db/development.sqlite3 pool: 5 timeout: 5000 test: adapter: sqlite3
gem'pg'
。但我不知道如何更改database.yml
我的database.yml应该是什么样子?它目前的样子:
development:
adapter: sqlite3
database: db/development.sqlite3
pool: 5
timeout: 5000
test:
adapter: sqlite3
database: db/test.sqlite3
pool: 5
timeout: 5000
production:
adapter: sqlite3
database: db/production.sqlite3
pool: 5
timeout: 5000
我应该用这个来代替开发吗
development:
adapter: postgresql
encoding: unicode
database: poets_app_development
pool: 5
username: poets_app
password:
用户名和密码!?我从来没有为sqlite设置过,所以它来自哪里?用户和密码与sqlite无关。这些是您的Postgres服务器的凭据。请看一篇在Ubuntu中配置Postgres的文章(部分:设置PostgreSQL用户和密码) 您还可以将主机添加到
数据库中。yml
:
host: <hostname or ip address. eg.: localhost>
主机:
database.yml文件是rails应用程序通用数据库配置的抽象
用户名和密码可以放在文件中,但不建议这样做。您可能已经使用类似于homebrew
的工具设置了postgres。此设置是干式的,并使用环境变量保护您的机密。祝你好运
考虑使用以下配置:
defaults: &defaults
adapter: postgresql
encoding: unicode
pool: 5
username: <%= ENV['YOUR_DB_USERNAME'] %> (username if PostgreSQL via Homebrew)
password: <%= ENV['YOUR_DB_PWD'] %>
development:
<<: *defaults
database: postgres_development
test: &test
<<: *defaults
database: postgres_test
production:
<<: *defaults
database: postgres_production
defaults:&defaults
适配器:postgresql
编码:unicode
游泳池:5
用户名:(如果PostgreSQL通过自制,则为用户名)
密码:
发展: