我在:
ruby-1.9.3-p194
Rails 3.0.9
我想在我的视图方法 percent_of 中使用数字数据类型。
例如,<%= 10.persent_of(50) %>
它等于20%
。
为此,我创建了包含
的lib/numeric.rb
文件
class Numeric
def percent_of(n)
self.to_f / n.to_f * 100.0
end
end
但我收到了一个错误:
undefined method `percent_of' for 10:Fixnum
我试图添加定义require 'Numeric'
,但它对我没有帮助。
帮帮我。
答案 0 :(得分:1)
请尝试使用require 'numeric'
。你需要的是文件而不是课程。
答案 1 :(得分:1)
检查config.autoload_paths += %W(#{config.root}/lib)
文件中是否有application.rb
。你应该扩展Fixnum而不是Numeric:
class Fixnum
def percent_of(n)
self.to_f / n.to_f * 100.0
end
end
然后在application_helper.rb中要求或包含它,以便它可供所有视图使用:
require 'numeric'
或include Numeric