这是我的代码:
item = []
today = Date.today
dates = {"3 years" => today << 12*3, "2 years" => today << 12*2,
"1.5 years" => today << 12*1.5,"1 year" => today << 12, "6 months" => today << 6,
"3 months" => today << 3, "today" => today}
我每次运行`<<': invalid date (ArgumentError)
行时都会收到此错误dates...
。
出了什么问题? today
应该是一个有效的日期,我尝试在乘法周围加上括号,并在值字段周围,但仍然是错误。当我在irb中尝试它时,它工作得很好。文件顶部需要日期。
答案 0 :(得分:1)
"1.5 years" => today << 12*1.5
这是罪魁祸首。将其替换为"1.5 years" => today << 18
,因为<<
方法显然无法处理浮点数(在1.9.3中)。
答案 1 :(得分:0)