我正在尝试根据时间戳检索税率。在 Time 类中定义“tax_rate”的地方做一个简单的 mixin 对我来说没有意义。将“tax_rate”放在“Government”类(或模块?我不知道我是新手)中更有意义,并且只需让 Time 类可以使用该方法,并可以选择假设当前时间如果单独使用。
例子:
Time.now.tax_rate
== 0.13
10.years_ago.tax_rate
== 0.10
Government.tax_rate
== 0.13
(假设 Time.now)
其中tax_rate方法如下:
def self.tax_rate
t = self || Time.now # I know this part won't work properly, I'll fix it later. I want it to default to using the current Time object or if the method is used on its own, the current time.
return 0.10 if t < Time.parse("July 1, 2001")
return 0.12 if t < Time.parse("July 1, 2010")
0.13
end
我基本上需要在我的 Rails 项目中参考不同类别的税率,我觉得直接将其放入其中一个模型中并不合适。它需要靠自己。