aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/schema
diff options
context:
space:
mode:
authorDickson S. Guedes <guedes@guedesoft.net>2012-09-05 14:01:21 -0300
committerDickson S. Guedes <guedes@guedesoft.net>2012-09-05 22:39:43 -0300
commit3b516b5beb79f7e8c1fdd123e7d5a03c00349cdf (patch)
treebc37c5a7d54e4fc8c6aafb83b6548fb69940b514 /activerecord/test/schema
parentddaeaefc2a454be9d893ef3c546793cc47b0db84 (diff)
downloadrails-3b516b5beb79f7e8c1fdd123e7d5a03c00349cdf.tar.gz
rails-3b516b5beb79f7e8c1fdd123e7d5a03c00349cdf.tar.bz2
rails-3b516b5beb79f7e8c1fdd123e7d5a03c00349cdf.zip
ActiveRecord support to PostgreSQL 9.2 JSON type
This implements the support to encode/decode JSON data to/from database and creating columns of type JSON using a native type [1] supported by PostgreSQL from version 9.2. [1] http://www.postgresql.org/docs/9.2/static/datatype-json.html
Diffstat (limited to 'activerecord/test/schema')
-rw-r--r--activerecord/test/schema/postgresql_specific_schema.rb11
1 files changed, 10 insertions, 1 deletions
diff --git a/activerecord/test/schema/postgresql_specific_schema.rb b/activerecord/test/schema/postgresql_specific_schema.rb
index 5f01f1fc50..2d8c0aa69a 100644
--- a/activerecord/test/schema/postgresql_specific_schema.rb
+++ b/activerecord/test/schema/postgresql_specific_schema.rb
@@ -1,7 +1,7 @@
ActiveRecord::Schema.define do
%w(postgresql_tsvectors postgresql_hstores postgresql_arrays postgresql_moneys postgresql_numbers postgresql_times postgresql_network_addresses postgresql_bit_strings postgresql_uuids
- postgresql_oids postgresql_xml_data_type defaults geometrics postgresql_timestamp_with_zones postgresql_partitioned_table postgresql_partitioned_table_parent).each do |table_name|
+ postgresql_oids postgresql_xml_data_type defaults geometrics postgresql_timestamp_with_zones postgresql_partitioned_table postgresql_partitioned_table_parent postgresql_json_data_type).each do |table_name|
execute "DROP TABLE IF EXISTS #{quote_table_name table_name}"
end
@@ -82,6 +82,15 @@ _SQL
_SQL
end
+ if 't' == select_value("select 'json'=ANY(select typname from pg_type)")
+ execute <<_SQL
+ CREATE TABLE postgresql_json_data_type (
+ id SERIAL PRIMARY KEY,
+ json_data json default '{}'::json
+ );
+_SQL
+ end
+
execute <<_SQL
CREATE TABLE postgresql_moneys (
id SERIAL PRIMARY KEY,