diff --git a/lib/ransack/nodes/value.rb b/lib/ransack/nodes/value.rb index 1a45cf0d..87d194da 100644 --- a/lib/ransack/nodes/value.rb +++ b/lib/ransack/nodes/value.rb @@ -26,7 +26,7 @@ def cast(type) case type when :date cast_to_date(value) - when :datetime, :timestamp, :time, :timestamptz + when :datetime, :timestamp, :time, :timestamptz, :datetimeoffset cast_to_time(value) when :boolean cast_to_boolean(value) diff --git a/spec/ransack/nodes/value_spec.rb b/spec/ransack/nodes/value_spec.rb index 1b5b7b25..87435f3a 100644 --- a/spec/ransack/nodes/value_spec.rb +++ b/spec/ransack/nodes/value_spec.rb @@ -25,7 +25,7 @@ module Nodes context "with a timestamp value" do let(:raw_value) { "2022-05-23 10:40:02 -0400" } - [:datetime, :timestamp, :time, :timestamptz].each do |type| + [:datetime, :timestamp, :time, :timestamptz, :datetimeoffset].each do |type| it "should cast #{type} correctly" do result = subject.cast(type)