轨道上的红宝石格式编号



我希望像" 42/100"一样打印一个数字。这种格式应通过我将在两个不同模型中使用的函数来完成。我应该在哪里添加该方法?

好的,根据有限的描述,这是我建议的:

formatting_helper.rb

module FormattingHelper
  MAXIMUM_VALUE = 100.freeze   # Change it here.
  def self.divide_by_maximum_value(str)
    "#{str}/#{MAXIMUM_VALUE}"
  end
end

然后您可以从任何地方调用FormattingHelper.divide_by_maximum_value。例如

FormattingHelper.divide_by_maximum_value('42')
 => "42/100"

如果要创建一个数字到百分比,则可以使用Ruby的Ruby on Rails官方指南的助手

    number_to_percentage(42)                                        
    # => 42.000%

除了这些指南外,您应该像Jagdeep Singth一样创建模块。或创建lambda

    num_formatter = ->(x,y='100') {  x.to_s+"/#{y.to_s}"  }
    num_formatter.call(42)
    # => "42/100"
    num_formatter.call(42,1000)
    # => "42/1000"

最新更新