我在本地机器上的web应用程序中使用了geokit-rails gem,我遵循了他们的github repo的步骤,它在我的本地机器上完美地工作,但是一旦我在openshift远程服务器上部署了我的应用程序。这似乎行不通。openshift ruby.log文件给出以下错误
[2015-05-15 21:10:52.1608 54455/7fec5b5fe700 agents/HelperAgent/requesthhandler .h:1971]: [Client 20] Cannot checkout session。启动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/运行/回购/app/模型/组。rb: 2:在"
我肯定我补充了宝石的geocoder宝石的geokit-rails宝石的gmaps4rails到我的gemfile,但问题仍然存在。我从我的应用程序中删除了对方法的所有geokit相关代码的调用,它工作得很好,所以问题必须在其中。我遵循这个链接Rails 3.1.0, geokit,与错误acts_as_mappable和这一个geokit在Ruby on Rails,问题与acts_as_mappable,但它没有解决任何问题。
我使用的是Rails 4.2.1
Thanks in advance
你应该通过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
在使用Spring时,您应该在再次尝试之前停止该操作:
$ spring stop
Spring stopped.