gpt4 book ai didi

ruby-on-rails - Rails 2.3 和 Rails 3.2 'weeks' 方法的区别

转载 作者:数据小太阳 更新时间:2023-10-29 08:10:08 26 4
gpt4 key购买 nike

在 ActiveSupport 日期处理方面,我注意到 Rails 2 和 Rails 3 之间存在一些不同的行为。

当我在 Rails 2.3 应用程序中运行以下代码时,它会按预期运行并一次输出一周的日期。

>> first = Date.today
=> Fri, 23 Mar 2012
>> last = Date.today + 2.months
=> Wed, 23 May 2012
>> first.step(last, 1.week) { |date| puts date }
2012-03-23
2012-03-30
2012-04-06
2012-04-13
2012-04-20
2012-04-27
2012-05-04
2012-05-11
2012-05-18

当我在 Rails 3 应用程序中尝试相同的代码时,我得到以下结果。

>> first = Date.today
=> Fri, 23 Mar 2012
>> last = Date.today + 2.months
=> Wed, 23 May 2012
>> first.step(last, 1.week) { |date| puts date }
Mar 23, 2012
TypeError: expected numeric

问题似乎在于 Rails 3 现在如何处理 .weeks 方法,Rails 2 输出如下

>> 1.week
=> 7 days

Rails 3 输出的地方

>> 1.week
=> 604800

任何人都可以解释这里发生了什么,以及我如何在 Rails 3 中一次一周地巧妙地迭代日期范围。

最佳答案

不知道为什么它不起作用,但这似乎:

(Date.today..(Date.today + 30)).step(7)

关于ruby-on-rails - Rails 2.3 和 Rails 3.2 'weeks' 方法的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9834763/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com