.change有什么作用?

Num*_*ers 0 ruby ruby-on-rails ruby-on-rails-4

我遇到了以下代码行:

self.update(next_question_at: (next_question_at.next_week).change(hour: 10))
Run Code Online (Sandbox Code Playgroud)

我正在谷歌搜索该change方法但无法找到它的文档,该方法做什么?

Arn*_*Roa 5

它会更改DateTime返回的对象的小时值next_question_at.next_week.

让我们说你有这个2013-01-01 11:55:00,如果你申请change(hour:7)它会成为2013-01-01 7:55:00.

您可以使用以下任意一个键:

:year, :month, :day, :hour, :min, :sec, :offset, :start.
Run Code Online (Sandbox Code Playgroud)

您可以在此处找到方法文档:

http://api.rubyonrails.org/classes/DateTime.html#method-i-change