在我的应用程序中,用户可以(a)从带有日期的下拉列表中选择,或者(b)使用日期选择器来创建个人日期范围。
此代码适用于选定的下拉日期:
date_from = Date.parse('2012-10-01')
date_to = Date.parse('2013-09-30')
@year_one = date_from..date_to
第一年定义为2012-10-01..2013-09-30
用户还可以创建任意范围:@user.cpa_cycle_start
到@user.cpa_cycle_end
。此计算中仅使用@user.cpa_cycle_end
,但它无效:
a = @user.cpa_cycle_end.to_s
b = @user.cpa_cycle_end.to_s
date_from = (Date.parse(a) - 3.years)
date_to = (Date.parse(b) - 2.years)
@year_one = date_from..date_to
错误消息为Invalid date
在尝试此迭代之前,我尝试将@user.cpa_cycle_end.to_s
放在()中:
date_from = (Date.parse(@user.cpa_cycle_end.to_s) - 3.years)
date_to = (Date.parse(@user.cpa_cycle_end.to_s) - 2.years)
@year_one = date_from..date_to
我认为将日期作为变量传递可能会起作用;然而,这两种方法都不奏效(巧合的是,使用24.months
和36.months
而不是数年并不会产生任何影响。)
如何获得范围:@year_one = date_from..date_to
提前感谢您的帮助。