将带有 SQLite3 的 Rails 推送到 Heroku 失败
当我尝试执行以下操作时,我遇到了与 Heroku 部署问题 中所述相同的情况将我的 Rails 3 应用程序部署到 Heroku,并且在 gems 文件中定义了 sqlite3.
I experience the same scenario as described in Heroku deployment issue when I try to deploy my Rails 3 app to Heroku and sqlite3 is defined in the gems file.
/usr/ruby1.8.7/lib/ruby/gems/1.8/gems/bundler-1.0.0/lib/bundler/runtime.rb:64:in`require': 没有要加载的文件 -- sqlite3 (LoadError)
/usr/ruby1.8.7/lib/ruby/gems/1.8/gems/bundler-1.0.0/lib/bundler/runtime.rb:64:in `require': no such file to load -- sqlite3 (LoadError)
知道这是为什么吗?ruby-forum 中定义的解决方案有效,我只是想知道为什么.
Any clue why this is? The solution defined in the ruby-forum works, I just wondered why.
推荐答案
确保您在生产环境中的 Gemfile 中不包含 sqlite:
Make sure you don't include sqlite in your Gemfile in production environments:
这是对的:
source :gemcutter
gem 'rails'
group :development, :test do
gem 'sqlite3-ruby', :require => 'sqlite3'
end
这是错误的:
source :gemcutter
gem 'rails'
gem 'sqlite3-ruby', :require => 'sqlite3'
相关文章