首先我正在运行ruby 1.9.3-p448和rails 4.0.3
这是我得到的乘客错误:
uninitialized constant MyApp::Application::GeoKit (NameError)
/home/deployer/html/myapp/config/application.rb:12:in `<class:Application>'
来自application.rb
require File.expand_path('../boot', __FILE__)
require 'rails/all'
require 'geokit'
Bundler.require(:default, Rails.env)
module MyApp
class Application < Rails::Application
# line 12
GeoKit::default_units = :miles
# ...
我已经验证我的Gemfile包含
gem 'geokit'
gem 'geokit-rails'
我已经运行了bundle install,乘客错误页面显示了Activated Ruby gems部分下的geokit和geokit-rails:
geokit =&gt; 1.8.4
geokit-rails =&gt; 2.0.1
我对ruby / rails很新,所以如果我需要发布任何其他文件,请告诉我。谢谢!
答案 0 :(得分:1)
从application.rb
删除此行并将其放入config/initalizer/geo_ket.rb
Geokit::default_units = :miles
它发生了,因为在line
之后加载了宝石,所以它无法识别它的类,所以它会抛出错误。
答案 1 :(得分:0)
有同样的问题。 宝石 geokit-rails3 取决于gem geokit 。 我有 geokit =&gt; 1.8.5 ,将其降级为 geokit =&gt; 1.6.5 做了这个伎俩。