has_metadata_column 1.1.0 → 1.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/README.md +1 -1
- data/has_metadata_column.gemspec +2 -2
- data/lib/has_metadata_column.rb +19 -8
- metadata +2 -2
data/README.md
CHANGED
@@ -4,7 +4,7 @@ Has Metadata Column -- Keep your tables narrow
|
|
4
4
|
| | |
|
5
5
|
|:------------|:--------------------------------|
|
6
6
|
| **Author** | Tim Morgan |
|
7
|
-
| **Version** | 1.1.
|
7
|
+
| **Version** | 1.1.1 (Jul 25, 2013) |
|
8
8
|
| **License** | Released under the MIT License. |
|
9
9
|
|
10
10
|
About
|
data/has_metadata_column.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "has_metadata_column"
|
8
|
-
s.version = "1.1.
|
8
|
+
s.version = "1.1.1"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Tim Morgan"]
|
12
|
-
s.date = "2013-07-
|
12
|
+
s.date = "2013-07-25"
|
13
13
|
s.description = "Reduce your table width and migration overhead by moving non-indexed columns to a separate metadata column."
|
14
14
|
s.email = "git@timothymorgan.info"
|
15
15
|
s.extra_rdoc_files = [
|
data/lib/has_metadata_column.rb
CHANGED
@@ -103,8 +103,6 @@ module HasMetadataColumn
|
|
103
103
|
class_attribute :metadata_column
|
104
104
|
self.metadata_column = column || :metadata
|
105
105
|
|
106
|
-
after_save :_reset_metadata
|
107
|
-
|
108
106
|
alias_method_chain :changed_attributes, :metadata_column
|
109
107
|
alias_method_chain :attribute_will_change!, :metadata_column
|
110
108
|
alias_method_chain :attribute_method?, :metadata
|
@@ -112,7 +110,6 @@ module HasMetadataColumn
|
|
112
110
|
alias_method_chain :attribute_before_type_cast, :metadata
|
113
111
|
alias_method_chain :attribute=, :metadata
|
114
112
|
alias_method_chain :query_attribute, :metadata
|
115
|
-
alias_method_chain :reload, :metadata
|
116
113
|
else
|
117
114
|
raise "Cannot redefine existing metadata column #{self.metadata_column}" if column && column != self.metadata_column
|
118
115
|
if metadata_column_fields.slice(*fields.keys) != fields
|
@@ -221,11 +218,25 @@ module HasMetadataColumn
|
|
221
218
|
end
|
222
219
|
|
223
220
|
# @private
|
224
|
-
def
|
225
|
-
|
226
|
-
|
227
|
-
|
228
|
-
|
221
|
+
def save(*)
|
222
|
+
response = super
|
223
|
+
_reset_metadata if response
|
224
|
+
response
|
225
|
+
end
|
226
|
+
|
227
|
+
# @private
|
228
|
+
def save!(*)
|
229
|
+
super.tap do
|
230
|
+
_reset_metadata
|
231
|
+
end
|
232
|
+
end
|
233
|
+
|
234
|
+
# @private
|
235
|
+
def reload(*)
|
236
|
+
super.tap do
|
237
|
+
@_metadata_hash = nil
|
238
|
+
_reset_metadata
|
239
|
+
end
|
229
240
|
end
|
230
241
|
|
231
242
|
private
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: has_metadata_column
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1.
|
4
|
+
version: 1.1.1
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-07-
|
12
|
+
date: 2013-07-25 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rails
|