提交 0a0ffb64 编写于 作者: A Andrey Novikov

Take UTC offset into account when assigning string value to time attribute.

上级 3d90a634
* Take into account UTC offset when assigning string representation of
timestamp with offset specified to attribute of time type.
*Andrey Novikov*
## Rails 5.0.0.beta1 (December 18, 2015) ##
* Validate multiple contexts on `valid?` and `invalid?` at once.
......
......@@ -38,7 +38,7 @@ def cast_value(value)
fast_string_to_time(dummy_time_value) || begin
time_hash = ::Date._parse(dummy_time_value)
return if time_hash[:hour].nil?
new_time(*time_hash.values_at(:year, :mon, :mday, :hour, :min, :sec, :sec_fraction))
new_time(*time_hash.values_at(:year, :mon, :mday, :hour, :min, :sec, :sec_fraction, :offset))
end
end
end
......
......@@ -64,6 +64,9 @@ def test_type_cast_time
time_string = Time.now.utc.strftime("%T")
assert_equal time_string, type.cast(time_string).strftime("%T")
assert_equal ::Time.utc(2000, 1, 1, 16, 45, 54), type.cast('2015-06-13T19:45:54+03:00')
assert_equal ::Time.utc(1999, 12, 31, 21, 7, 8), type.cast('06:07:08+09:00')
end
def test_type_cast_datetime_and_timestamp
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册