我正在try 将我的第一个应用程序部署到Heroku.我使用SQLite作为数据库.据我所知,Heroku不使用SQLite——它会在后端切换到Postgres.

在部署时,我会出现以下错误:

/usr/ruby1.8.7/lib/ruby/gems/1.8/gems/bundler-1.0.0/lib/bundler/runtime.rb:64:in

我的Gemfile(我认为这是导致此问题的原因)如下所示:

source 'http://rubygems.org'

gem 'rails', '3.0.0'        
gem 'sqlite3-ruby', '1.2.5', :require => 'sqlite3'

我做错了什么?

推荐答案

Heroku不支持SQLite数据库.您需要在生产中使用PostgreSQL,如I also explained in this post.

group :production do
  gem "pg"
end

group :development, :test do
  gem "sqlite3", "~> 1.3.0"
end

实际上,建议在开发/测试环境中尽可能靠近生产环境.因此,我建议您将所有环境切换到PostgreSQL.

# replace gem "sqlite3" with
gem "pg"

Ruby-on-rails相关问答推荐

Rails文档的悲观锁定示例中的争用条件

在Rails中,如何将帮助器方法添加到属性/列?

删除链接不起作用,重定向 echo 示 Ruby

为什么在使用 Ruby on Rails 时我的徽标没有出现在 Bootstrap 导航栏中?

错误原始错误:未安装 ImageMagick/GraphicsMagick

Rails:关于yields

Ruby on Rails 有没有好的管理生成器?

twitter bootstrap下拉突然不起作用

如何添加到序列化数组

如何更改 Heroku 应用程序的 DATABASE_URL

Rails ActiveRecord 查询日期范围

如何在where子句中组合两个条件?

RSpec > 有没有办法用一个命令运行所有测试?

单击表格行(使用 bootstrap 程序)时,如何使用模式显示数据?

Rails - 如何在 f.submit 上放置确认弹出窗口?

如何编写 Capybara 断言来判断按钮的存在及其启用或禁用状态?

对象不支持此属性或方法 Rails Windows 64bit

在 Rails 中复制模型实例

在 Rails 生产中禁用assets资源 缩小

如何检测rails是否在根url?