在我的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”,它显示了可寻址的安装。我做错了什么?
答案 0 :(得分:7)
查看可寻址的gem源我看到它没有lib/addressable.rb
这是默认文件,rubygems或bundler在加载所需的gem时需要。所以看起来它是故意这样设计的 - 让你明确地只需要你需要的库。