我试图在Rails中的特定操作中使用Addressable gem。
我通常的做法是将gem包含在Gemfile中,然后根据需要使用模块。
的Gemfile:
gem 'addressable'
some_controller.rb:
class SomeController < ApplicationController
def new
require "addressable/uri"
current_url = Addressable::URI.parse(request.original_url)
....
end
end
但是,我在其他未使用gem的操作/控制器上收到500错误。
故障安全响应期间出错:未初始化的常量可寻址
最后,我删除了所有代码调用可寻址,但保留了gem文件中的条目,并且所有操作都存在500错误。为什么会这样?
答案 0 :(得分:2)
不确定为什么你会收到这个特定的错误,但是如果不希望自动执行require 'addressable'
那么你可以在Gemfile
应该:
gem 'addressable', :require => false