4

私のGemfileには次のものがあります:

gem 'addressable'

search_controller.rb で:

uri = Addressable::URI.new
uri.query_values = {:q => query}

次のエラーが表示されます。

NameError (uninitialized constant SearchController::Addressable):

私が入れたら

require 'addressable/uri'

私のコントローラーの上で、それは動作します!!. 私はすでに「sudo bundle install」を行っており、アドレス可能なものがインストールされていることを示しています。私は何を間違っていますか?

4

1 に答える 1

8

アドレス指定可能な gem ソースを見るとlib/addressable.rb、必要な gem をロードするときに ruby​​gems または bundler が必要とするデフォルトのファイルがないことがわかります。したがって、必要なライブラリのみを明示的に要求するように、意図的にこのように設計されているようです。

于 2012-09-19T14:55:50.770 に答える