如何使用礼物?在Ruby项目中?

时间:2011-01-10 15:57:40

标签: ruby ruby-on-rails-3

我编写了一个脚本,它使用Rails对Ruby核心Object类的扩展,现在我想把它自己分开。而不是重写这些,是否有任何库或扩展可以用来使它们独立可用?

2 个答案:

答案 0 :(得分:30)

您不必运行Rails来使用

require 'active_support/all'

或者如果您只想要一个特定的扩展名,例如blank?用于字符串,那么只需

require 'active_support/core_ext/string'

looked up present?,实际上定义为

def present?
  !blank?
end

在活动支持中定义为空白

def blank?
  respond_to?(:empty?) ? !!empty? : !self
end

答案 1 :(得分:8)

您可以要求ActiveSupport中的特定功能。在这种情况下:

require 'active_support/core_ext/object/blank'
[].present? #=> false