我在我的本地计算机上的web应用程序中使用了geokit-rails gem我按照他们的github repo中的步骤进行操作,并且在我的本地计算机上完美运行但是一旦我在openshift远程服务器上部署了我的应用程序。它似乎不起作用。 openshift ruby.log文件给出以下错误
[2015-05-15 21:10:52.1608 54455 / 7fec5b5fe700 agents / HelperAgent / RequestHandler.h:1971]:[客户端20]无法结账会话。启动Web应用程序时发生错误。 错误页面: 未定义的方法
acts_as_mappable' for Group (call 'Group.connection' to establish a connection):Class (NoMethodError) /var/lib/openshift/555682cde0b8cd2874000091/app-root/runtime/repo/vendor/bundle/ruby/gems/activerecord-4.2.1/lib/active_record/dynamic_matchers.rb:26:in
method_missing' /var/lib/openshift/555682cde0b8cd2874000091/app-root/runtime/repo/app/models/group.rb:2:in`'
我确定我补充道 宝石'地理编码器' 宝石'geokit-rails' 宝石'gmaps4rails' 到我的gemfile但问题仍然存在。我从我的应用程序删除了所有geokit相关代码的方法调用,它工作正常,所以问题必须在其中。我点了这个链接Rails 3.1.0, geokit, with error acts_as_mappable和这个链接Geokit in Ruby on Rails, problem with acts_as_mappable,但它没有解决任何问题。
我正在使用Rails 4.2.1
提前致谢
答案 0 :(得分:1)
您应该通过ctrl + c重新启动rails应用程序,或者您应该再次退出rails控制台和rails控制台。
例如
Location.class
NameError: undefined local variable or method `acts_as_mappable' for Location (call 'Location.connection' to establish a connection):Class
from /Users/caiqinghua/.rvm/gems/ruby-2.2.1/gems/activerecord-4.2.1/lib/active_record/dynamic_matchers.rb:26:in `method_missing'
from /Users/caiqinghua/weishop/app/models/location.rb:11:in `<class:Location>'
from /Users/caiqinghua/weishop/app/models/location.rb:10:in `<top (required)>'
2.2.1 :018 > exit
caiqinghua@qinghuadeMacBook-Pro:~/location(set-shop-location|✚1…) % rails c (set-shop-location00)
Loading development environment (Rails 4.2.1)
2.2.1 :001 > Location.class
=> Class
答案 1 :(得分:0)
使用Spring时,您应该在再次尝试之前停止:
$ spring stop
Spring stopped.