1

我有一个Invoice继承自ActiveRecord::Base. Invoice有一个名为 的属性tax。我想要做的是,从to_s看起来tax19,00 %.

现在,如何覆盖to_s实例属性的方法?

我知道,我可以在number_with_precision启用 I18n 的视图中执行此操作,但我希望该功能处于中心位置。这是to_s属性的方法。

这是完成此行为的正确方法还是有其他方法可以完成此操作?

4

1 回答 1

2

您不能覆盖to_s属性的方法。您可以做的是在您的 Invoice 模型中创建一个方法,formatted_tax如下所示:

class Invoice < ActiveRecord::Base
  def formatted_tax
    # do your formatting on self.tax here
  end
end
于 2012-05-10T15:11:37.327 回答