我希望库范围内的所有日期都有一个通用格式("%d.%m.%Y"
)而不是默认格式("%Y-%d-%m"
)。现在我已经提出了3种不同的方法(我不喜欢它们中的任何一种)来实现我想要的。所有这些都按照从大多数到较少痛苦的顺序表示如下:
to_s
实例重新定义Date
方法; Date
方法定义to_s
类的自定义后代。其他信息:
Date
类型的属性; Date
类型的属性名称可能会有所不同; 问题如下:
有没有更好的方法来处理我正在努力解决的问题(如果不是,那么在上面已经表示的那些之间最优雅的方式是什么?)?
答案 0 :(得分:1)
创建另一个模块,其中包含对Date::to_s
module MyDate
refine Date do
def to_s
# here goes your implementation of to_s
end
end
end
然后:
class NeedsCustomDateFormat
using MyDate
# All Date instances will have the custom to_s
end