我正在尝试部署到 Heroku 但不能,因为默认的 sqlite3 服务器仍然存在。
Detected sqlite3 gem which is not supported on Heroku. https://devcenter.heroku.com/articles/sqlite3
在 Rails 3.2.13 的另一个教程中,我能够使用 sqlite3 作为开发数据库,使用 Postgres 作为生产数据库。 Gemfile 在 Rails 4 中看起来有所不同,但我已将其修改为:
group :development do
# Use sqlite3 as the database for Active Record
gem 'sqlite3'
end
group :production do
gem 'pg'
end
然后我更改了我的 database.yml 文件,使生产部分看起来像这样:
production:
adapter: postgresql
database: my_production_database
pool: 5
timeout: 5000
然后我运行了 bundle install
和 rake db:create
和 rake db:migrate
但我仍然无法推送到 Heroku。所以我尝试了 rake db:drop
以及 rake db:create
和 rake db:migrate
但我仍然收到相同的错误消息。
我错过了什么吗?我还需要做些什么来确保我将 Postgres 作为我的生产数据库并能够使用 Heroku?
最佳答案
不要这样做。你只会在路上遇到问题。在生产和开发中使用相同的数据库。有很多资源可用于记录从 sqlite 到 postgres 数据库的转换。
花点时间切换。
看看这个 Rails Cast。
http://railscasts.com/episodes/342-migrating-to-postgresql?view=asciicast
关于ruby-on-rails - Rails 4 - 如何在开发中使用 sqlite3 并在生产中使用 PostgreSQL w/Heroku,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21122358/