Class: ActiveRecord::ConnectionAdapters::PostgreSQL::OID::Json
- Inherits:
-
Type::Value
- Object
- Type::Value
- ActiveRecord::ConnectionAdapters::PostgreSQL::OID::Json
- Includes:
- Type::Mutable
- Defined in:
- lib/active_record/connection_adapters/postgresql/oid/json.rb
Overview
:nodoc:
Direct Known Subclasses
Instance Attribute Summary
Attributes inherited from Type::Value
Instance Method Summary collapse
- #accessor ⇒ Object
- #type ⇒ Object
- #type_cast_for_database(value) ⇒ Object
- #type_cast_from_database(value) ⇒ Object
Methods included from Type::Mutable
#changed_in_place?, #type_cast_from_user
Methods inherited from Type::Value
#==, #binary?, #changed?, #changed_in_place?, #initialize, #klass, #number?, #text?, #type_cast_for_schema, #type_cast_from_user
Constructor Details
This class inherits a constructor from ActiveRecord::Type::Value
Instance Method Details
#accessor ⇒ Object
28 29 30 |
# File 'lib/active_record/connection_adapters/postgresql/oid/json.rb', line 28 def accessor ActiveRecord::Store::StringKeyedHashAccessor end |
#type ⇒ Object
8 9 10 |
# File 'lib/active_record/connection_adapters/postgresql/oid/json.rb', line 8 def type :json end |
#type_cast_for_database(value) ⇒ Object
20 21 22 23 24 25 26 |
# File 'lib/active_record/connection_adapters/postgresql/oid/json.rb', line 20 def type_cast_for_database(value) if value.is_a?(::Array) || value.is_a?(::Hash) ::ActiveSupport::JSON.encode(value) else super end end |
#type_cast_from_database(value) ⇒ Object
12 13 14 15 16 17 18 |
# File 'lib/active_record/connection_adapters/postgresql/oid/json.rb', line 12 def type_cast_from_database(value) if value.is_a?(::String) ::ActiveSupport::JSON.decode(value) rescue nil else super end end |