试图在gem中要求active_support

时间:2013-09-11 03:47:09

标签: ruby-on-rails ruby gem activesupport

我有一个ruby gem,我想在rails active_support模块中包含的gem中使用Hash.from_xml方法。我的gemspec中有以下代码:

gem.add_dependency 'active_support', '~> 3.0.0'

但是,当我在本地构建和安装gem时,运行irb,需要gem,我没有看到包含主动支持的方法吗?

关于我做错了什么或如何调试的任何建议?谢谢!

1 个答案:

答案 0 :(得分:9)

您需要require ActiveSupport所需的方法;它们不会默认添加。

就像Yevgeniy在评论中提到的那样,如果您需要所有内容,那么执行此操作的方法是require "active_support/all" - 或者,例如,如果您只想使用Hash扩展名,请使用require 'active_support/core_ext/hash'。请注意,这通常不在gemspec中,而是在gem用于设置自身的任何文件中。

或许更好的是require需要它们的实际文件中所需的Active Support文件,但这是一个品味问题。