schema_comments 0.3.1 → 0.3.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: cb906aa319149d9162686075b61ccaa340f1fd38
4
- data.tar.gz: 91ba3034e9efc564abfe4e7b556639fc606a5c6a
3
+ metadata.gz: 6cf787ee52801a9d7e04e182ac66a11d5bd8c2f7
4
+ data.tar.gz: 888fa0d6e255163ff7173103e6a2091b047baf2e
5
5
  SHA512:
6
- metadata.gz: 8b83e84536e4770de6e2231c9c6b712ce299ed3bb7610e847d0ba004050455d5d3a9e35d6d88ad809e67e8c8075757a5ad276370ab37363869c2f572a6a8b8ca
7
- data.tar.gz: 5ac5502337703798c29e059d1bfaa7efbffdde85a2148cd88143e9ea40f579849638910107190be71f2e975952e0243f8b800c3dab2edf33f4e6e6296a8e0d01
6
+ metadata.gz: aeb01ef93ce21aa25ffa8e7050a54df0b24603dfdf3167c34e1eda9992031fda408f4f5f5ced2a2c248f37e1909791a4dfbb7784b9d07422f95d59f14c19b0dd
7
+ data.tar.gz: b58f9028895a5bbf729fc7521b5884ba0be8fad8fe90954d040a354b7dc823fde426fc25082eb96637dfc7ae409bdc62a75761d73a423d33a5963dc5dd9958e5
@@ -4,6 +4,13 @@ require 'schema_comments/schema_dumper'
4
4
  module SchemaComments
5
5
 
6
6
  class SchemaDumper::Mysql < SchemaComments::SchemaDumper
7
+ include ActiveRecord::ConnectionAdapters::ColumnDumper # for schema_default
8
+
9
+ if ActiveRecord.version < Gem::Version.new("4.2.0")
10
+ def schema_default(column)
11
+ default_string(column.default)
12
+ end
13
+ end
7
14
 
8
15
  class << self
9
16
  public :new
@@ -109,7 +116,8 @@ HEADER
109
116
  spec[:precision] = column.precision.inspect if column.precision
110
117
  spec[:scale] = column.scale.inspect if column.scale
111
118
  spec[:null] = 'false' unless column.null
112
- spec[:default] = default_string(column.default) if column.has_default?
119
+ default = schema_default(column) if column.has_default?
120
+ spec[:default] = default unless default.nil?
113
121
  if column.name == pk
114
122
  spec[:comment] = '"AUTO_INCREMENT PRIMARY KEY by rails"'
115
123
  else
@@ -1,6 +1,13 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  module SchemaComments
3
3
  class SchemaDumper < ActiveRecord::SchemaDumper
4
+ include ActiveRecord::ConnectionAdapters::ColumnDumper # for schema_default
5
+
6
+ if ActiveRecord.version < Gem::Version.new("4.2.0")
7
+ def schema_default(column)
8
+ default_string(column.default)
9
+ end
10
+ end
4
11
 
5
12
  autoload :Mysql, 'schema_comments/schema_dumper/mysql'
6
13
 
@@ -71,7 +78,8 @@ module SchemaComments
71
78
  spec[:precision] = column.precision.inspect if column.precision
72
79
  spec[:scale] = column.scale.inspect if column.scale
73
80
  spec[:null] = 'false' unless column.null
74
- spec[:default] = default_string(column.default) if column.has_default?
81
+ default = schema_default(column) if column.has_default?
82
+ spec[:default] = default unless default.nil?
75
83
  spec[:comment] = '"' << (column.comment || '').gsub(/\"/, '\"') << '"' # ここでinspectを使うと最後の文字だけ文字化け(UTF-8のコード)になっちゃう
76
84
  (spec.keys - [:name, :type]).each{ |k| spec[k].insert(0, "#{k.inspect} => ")}
77
85
  spec
@@ -1,3 +1,3 @@
1
1
  module SchemaComments
2
- VERSION = "0.3.1"
2
+ VERSION = "0.3.2"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: schema_comments
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1
4
+ version: 0.3.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - akm
@@ -140,7 +140,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
140
140
  version: '0'
141
141
  requirements: []
142
142
  rubyforge_project:
143
- rubygems_version: 2.4.5
143
+ rubygems_version: 2.4.6
144
144
  signing_key:
145
145
  specification_version: 4
146
146
  summary: schema_comments generates extra methods dynamically for attribute which has