Ruby on rails .change函数在ruby中不适用于偶数个月的日期

Ruby on rails .change函数在ruby中不适用于偶数个月的日期,ruby-on-rails,ruby,Ruby On Rails,Ruby,嗨,我已经定义了这个方法 def change_date date = Date.today start_date = date.change(year: 2015, month: (2 * 3)).at_beginning_of_quarter p 'aaaaaa' p start_date end 给我无效日期错误。更改不起作用或我做得不对请指导我如何解决此问题。Thanx提前。这实际上是发生的,因为今天是7月31日,并非所有月份都有31天

嗨,我已经定义了这个方法

def change_date
    date = Date.today    
    start_date = date.change(year: 2015, month: (2 *  3)).at_beginning_of_quarter
    p 'aaaaaa'    
    p start_date
end

给我
无效日期
错误。更改不起作用或我做得不对请指导我如何解决此问题。Thanx提前。

这实际上是发生的,因为今天是7月31日,并非所有月份都有31天,例如6月,第6个月,只有30天。

这是因为您指定的月份没有当前日期

我的意思是,当前月份(7月)有31天,但您正在设置的月份(6月)只有30天。您可以这样更改代码:

# in Rails:
date = Date.today.beginning_of_month # or Date.today.change(day: 1)

然后将“更改”链接到
日期变量前面。

@Pavan这是不正确的<代码>日期
也有
更改
的方法。是的,你对它的给出问题有偶数个月,但没有奇数个月,但为什么会这样