有人能告诉我我做错了什么吗?我试图将一个简单的rails应用程序推送到使用MongoDB的Heroku。我的Gemfile包含以下行:
gem“mongo”
当将应用程序推送到Heroku时,错误消失了:没有要加载的文件 - mongo
-----> Heroku receiving push
-----> Rails app detected
-----> Detected Rails is not set to serve static_assets
Installing rails3_serve_static_assets... done
-----> Gemfile detected, running Bundler version 1.0.3
Unresolved dependencies detected; Installing...
/usr/ruby1.8.7/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require': no such file to load -- mongo (LoadError)
这是我的整个gemfile:
require 'rubygems'
require 'mongo'
source 'http://gemcutter.org'
gem "rails", "3.0.0"
#gem 'rails', :git => 'http://github.com/rails/rails.git'
gem "mongo_mapper"
gem 'mongoid', '2.0.0.beta.20'
gem 'devise', :git => 'git://github.com/plataformatec/devise.git'
gem 'heroku', '1.13.7'
# Bundle edge Rails instead:
# gem 'rails', :git => 'git://github.com/rails/rails.git'
答案 0 :(得分:6)
你的Gemfile中不需要这些行:
require 'rubygems'
require 'mongo'
捆绑商无需更新或安装您的宝石。
另外,你有没有安装mongoid和mongo_mapper的原因?
答案 1 :(得分:0)
也许您可以使用的另一种方法是使用https://mongolab.com之类的东西,将应用程序与云上的数据库连接,然后进行部署(仅限rails应用程序)。我已经使用MongoLabs一段时间,并且效果很好,您可以直接从那里检查您的收藏(您不需要使用JS shell)。这只是一个建议,使部署更容易:)