datts_right 0.0.18 → 0.0.19
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/Gemfile.lock +1 -1
- data/VERSION +1 -1
- data/datts_right.gemspec +37 -1
- data/lib/datts_right/base.rb +1 -2
- data/lib/datts_right/instance_methods.rb +6 -6
- data/spec/datts_right/create_definitions_spec.rb +5 -1
- metadata +183 -3
data/Gemfile.lock
CHANGED
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.0.
|
1
|
+
0.0.19
|
data/datts_right.gemspec
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{datts_right}
|
8
|
-
s.version = "0.0.
|
8
|
+
s.version = "0.0.19"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Ramon Tayag"]
|
@@ -263,6 +263,18 @@ Gem::Specification.new do |s|
|
|
263
263
|
s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
|
264
264
|
s.add_development_dependency(%q<jeweler>, ["~> 1.5.2"])
|
265
265
|
s.add_development_dependency(%q<rcov>, [">= 0"])
|
266
|
+
s.add_development_dependency(%q<autotest>, [">= 0"])
|
267
|
+
s.add_development_dependency(%q<sqlite3>, [">= 0"])
|
268
|
+
s.add_development_dependency(%q<rspec>, ["~> 2.3.0"])
|
269
|
+
s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
|
270
|
+
s.add_development_dependency(%q<jeweler>, ["~> 1.5.2"])
|
271
|
+
s.add_development_dependency(%q<rcov>, [">= 0"])
|
272
|
+
s.add_development_dependency(%q<autotest>, [">= 0"])
|
273
|
+
s.add_development_dependency(%q<sqlite3>, [">= 0"])
|
274
|
+
s.add_development_dependency(%q<rspec>, ["~> 2.3.0"])
|
275
|
+
s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
|
276
|
+
s.add_development_dependency(%q<jeweler>, ["~> 1.5.2"])
|
277
|
+
s.add_development_dependency(%q<rcov>, [">= 0"])
|
266
278
|
else
|
267
279
|
s.add_dependency(%q<datts_right>, [">= 0"])
|
268
280
|
s.add_dependency(%q<rails>, [">= 3.0.0"])
|
@@ -459,6 +471,18 @@ Gem::Specification.new do |s|
|
|
459
471
|
s.add_dependency(%q<bundler>, ["~> 1.0.0"])
|
460
472
|
s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
|
461
473
|
s.add_dependency(%q<rcov>, [">= 0"])
|
474
|
+
s.add_dependency(%q<autotest>, [">= 0"])
|
475
|
+
s.add_dependency(%q<sqlite3>, [">= 0"])
|
476
|
+
s.add_dependency(%q<rspec>, ["~> 2.3.0"])
|
477
|
+
s.add_dependency(%q<bundler>, ["~> 1.0.0"])
|
478
|
+
s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
|
479
|
+
s.add_dependency(%q<rcov>, [">= 0"])
|
480
|
+
s.add_dependency(%q<autotest>, [">= 0"])
|
481
|
+
s.add_dependency(%q<sqlite3>, [">= 0"])
|
482
|
+
s.add_dependency(%q<rspec>, ["~> 2.3.0"])
|
483
|
+
s.add_dependency(%q<bundler>, ["~> 1.0.0"])
|
484
|
+
s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
|
485
|
+
s.add_dependency(%q<rcov>, [">= 0"])
|
462
486
|
end
|
463
487
|
else
|
464
488
|
s.add_dependency(%q<datts_right>, [">= 0"])
|
@@ -656,6 +680,18 @@ Gem::Specification.new do |s|
|
|
656
680
|
s.add_dependency(%q<bundler>, ["~> 1.0.0"])
|
657
681
|
s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
|
658
682
|
s.add_dependency(%q<rcov>, [">= 0"])
|
683
|
+
s.add_dependency(%q<autotest>, [">= 0"])
|
684
|
+
s.add_dependency(%q<sqlite3>, [">= 0"])
|
685
|
+
s.add_dependency(%q<rspec>, ["~> 2.3.0"])
|
686
|
+
s.add_dependency(%q<bundler>, ["~> 1.0.0"])
|
687
|
+
s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
|
688
|
+
s.add_dependency(%q<rcov>, [">= 0"])
|
689
|
+
s.add_dependency(%q<autotest>, [">= 0"])
|
690
|
+
s.add_dependency(%q<sqlite3>, [">= 0"])
|
691
|
+
s.add_dependency(%q<rspec>, ["~> 2.3.0"])
|
692
|
+
s.add_dependency(%q<bundler>, ["~> 1.0.0"])
|
693
|
+
s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
|
694
|
+
s.add_dependency(%q<rcov>, [">= 0"])
|
659
695
|
end
|
660
696
|
end
|
661
697
|
|
data/lib/datts_right/base.rb
CHANGED
@@ -68,8 +68,7 @@ module DattsRight
|
|
68
68
|
# Used when you have already existing records that have don't have definitions, and you want them to
|
69
69
|
def self.create_definitions!
|
70
70
|
self.all.each do |record|
|
71
|
-
|
72
|
-
record.dynamic_attribute_definition.create if dynamic_attributes_options[:definition] && record.dynamic_attribute_definition.nil?
|
71
|
+
record.create_dynamic_attribute_definition_if_needed
|
73
72
|
end
|
74
73
|
end
|
75
74
|
|
@@ -113,6 +113,12 @@ module DattsRight
|
|
113
113
|
send dynamic_attributes_options[:of].to_s
|
114
114
|
end
|
115
115
|
|
116
|
+
def create_dynamic_attribute_definition_if_needed
|
117
|
+
if dynamic_attributes_options[:definition]
|
118
|
+
DynamicAttributeDefinition.create :attribute_defineable_id => self.id, :attribute_defineable_type => self.class.name
|
119
|
+
end
|
120
|
+
end
|
121
|
+
|
116
122
|
private
|
117
123
|
|
118
124
|
# Called after validation on update so that dynamic attributes behave
|
@@ -145,12 +151,6 @@ module DattsRight
|
|
145
151
|
end
|
146
152
|
end
|
147
153
|
|
148
|
-
def create_dynamic_attribute_definition_if_needed
|
149
|
-
if dynamic_attributes_options[:definition]
|
150
|
-
DynamicAttributeDefinition.create :attribute_defineable_id => self.id, :attribute_defineable_type => self.class.name
|
151
|
-
end
|
152
|
-
end
|
153
|
-
|
154
154
|
def save_dynamic_attribute_definition
|
155
155
|
dynamic_attribute_definition.save if dynamic_attribute_definition
|
156
156
|
end
|
@@ -1,9 +1,13 @@
|
|
1
1
|
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
2
2
|
|
3
3
|
describe DattsRight, ".create_definitions!" do
|
4
|
+
before do
|
5
|
+
reset_database
|
6
|
+
end
|
7
|
+
|
4
8
|
it "should create definitions for all existing records, if the definition does not exist" do
|
5
9
|
2.times do
|
6
|
-
Category.create.destroy
|
10
|
+
Category.create.dynamic_attribute_definition.destroy
|
7
11
|
end
|
8
12
|
Category.create_definitions!
|
9
13
|
Category.all.each do |c|
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: datts_right
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 57
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 0
|
9
|
-
-
|
10
|
-
version: 0.0.
|
9
|
+
- 19
|
10
|
+
version: 0.0.19
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Ramon Tayag
|
@@ -2944,6 +2944,186 @@ dependencies:
|
|
2944
2944
|
name: rcov
|
2945
2945
|
version_requirements: *id195
|
2946
2946
|
prerelease: false
|
2947
|
+
- !ruby/object:Gem::Dependency
|
2948
|
+
type: :development
|
2949
|
+
requirement: &id196 !ruby/object:Gem::Requirement
|
2950
|
+
none: false
|
2951
|
+
requirements:
|
2952
|
+
- - ">="
|
2953
|
+
- !ruby/object:Gem::Version
|
2954
|
+
hash: 3
|
2955
|
+
segments:
|
2956
|
+
- 0
|
2957
|
+
version: "0"
|
2958
|
+
name: autotest
|
2959
|
+
version_requirements: *id196
|
2960
|
+
prerelease: false
|
2961
|
+
- !ruby/object:Gem::Dependency
|
2962
|
+
type: :development
|
2963
|
+
requirement: &id197 !ruby/object:Gem::Requirement
|
2964
|
+
none: false
|
2965
|
+
requirements:
|
2966
|
+
- - ">="
|
2967
|
+
- !ruby/object:Gem::Version
|
2968
|
+
hash: 3
|
2969
|
+
segments:
|
2970
|
+
- 0
|
2971
|
+
version: "0"
|
2972
|
+
name: sqlite3
|
2973
|
+
version_requirements: *id197
|
2974
|
+
prerelease: false
|
2975
|
+
- !ruby/object:Gem::Dependency
|
2976
|
+
type: :development
|
2977
|
+
requirement: &id198 !ruby/object:Gem::Requirement
|
2978
|
+
none: false
|
2979
|
+
requirements:
|
2980
|
+
- - ~>
|
2981
|
+
- !ruby/object:Gem::Version
|
2982
|
+
hash: 3
|
2983
|
+
segments:
|
2984
|
+
- 2
|
2985
|
+
- 3
|
2986
|
+
- 0
|
2987
|
+
version: 2.3.0
|
2988
|
+
name: rspec
|
2989
|
+
version_requirements: *id198
|
2990
|
+
prerelease: false
|
2991
|
+
- !ruby/object:Gem::Dependency
|
2992
|
+
type: :development
|
2993
|
+
requirement: &id199 !ruby/object:Gem::Requirement
|
2994
|
+
none: false
|
2995
|
+
requirements:
|
2996
|
+
- - ~>
|
2997
|
+
- !ruby/object:Gem::Version
|
2998
|
+
hash: 23
|
2999
|
+
segments:
|
3000
|
+
- 1
|
3001
|
+
- 0
|
3002
|
+
- 0
|
3003
|
+
version: 1.0.0
|
3004
|
+
name: bundler
|
3005
|
+
version_requirements: *id199
|
3006
|
+
prerelease: false
|
3007
|
+
- !ruby/object:Gem::Dependency
|
3008
|
+
type: :development
|
3009
|
+
requirement: &id200 !ruby/object:Gem::Requirement
|
3010
|
+
none: false
|
3011
|
+
requirements:
|
3012
|
+
- - ~>
|
3013
|
+
- !ruby/object:Gem::Version
|
3014
|
+
hash: 7
|
3015
|
+
segments:
|
3016
|
+
- 1
|
3017
|
+
- 5
|
3018
|
+
- 2
|
3019
|
+
version: 1.5.2
|
3020
|
+
name: jeweler
|
3021
|
+
version_requirements: *id200
|
3022
|
+
prerelease: false
|
3023
|
+
- !ruby/object:Gem::Dependency
|
3024
|
+
type: :development
|
3025
|
+
requirement: &id201 !ruby/object:Gem::Requirement
|
3026
|
+
none: false
|
3027
|
+
requirements:
|
3028
|
+
- - ">="
|
3029
|
+
- !ruby/object:Gem::Version
|
3030
|
+
hash: 3
|
3031
|
+
segments:
|
3032
|
+
- 0
|
3033
|
+
version: "0"
|
3034
|
+
name: rcov
|
3035
|
+
version_requirements: *id201
|
3036
|
+
prerelease: false
|
3037
|
+
- !ruby/object:Gem::Dependency
|
3038
|
+
type: :development
|
3039
|
+
requirement: &id202 !ruby/object:Gem::Requirement
|
3040
|
+
none: false
|
3041
|
+
requirements:
|
3042
|
+
- - ">="
|
3043
|
+
- !ruby/object:Gem::Version
|
3044
|
+
hash: 3
|
3045
|
+
segments:
|
3046
|
+
- 0
|
3047
|
+
version: "0"
|
3048
|
+
name: autotest
|
3049
|
+
version_requirements: *id202
|
3050
|
+
prerelease: false
|
3051
|
+
- !ruby/object:Gem::Dependency
|
3052
|
+
type: :development
|
3053
|
+
requirement: &id203 !ruby/object:Gem::Requirement
|
3054
|
+
none: false
|
3055
|
+
requirements:
|
3056
|
+
- - ">="
|
3057
|
+
- !ruby/object:Gem::Version
|
3058
|
+
hash: 3
|
3059
|
+
segments:
|
3060
|
+
- 0
|
3061
|
+
version: "0"
|
3062
|
+
name: sqlite3
|
3063
|
+
version_requirements: *id203
|
3064
|
+
prerelease: false
|
3065
|
+
- !ruby/object:Gem::Dependency
|
3066
|
+
type: :development
|
3067
|
+
requirement: &id204 !ruby/object:Gem::Requirement
|
3068
|
+
none: false
|
3069
|
+
requirements:
|
3070
|
+
- - ~>
|
3071
|
+
- !ruby/object:Gem::Version
|
3072
|
+
hash: 3
|
3073
|
+
segments:
|
3074
|
+
- 2
|
3075
|
+
- 3
|
3076
|
+
- 0
|
3077
|
+
version: 2.3.0
|
3078
|
+
name: rspec
|
3079
|
+
version_requirements: *id204
|
3080
|
+
prerelease: false
|
3081
|
+
- !ruby/object:Gem::Dependency
|
3082
|
+
type: :development
|
3083
|
+
requirement: &id205 !ruby/object:Gem::Requirement
|
3084
|
+
none: false
|
3085
|
+
requirements:
|
3086
|
+
- - ~>
|
3087
|
+
- !ruby/object:Gem::Version
|
3088
|
+
hash: 23
|
3089
|
+
segments:
|
3090
|
+
- 1
|
3091
|
+
- 0
|
3092
|
+
- 0
|
3093
|
+
version: 1.0.0
|
3094
|
+
name: bundler
|
3095
|
+
version_requirements: *id205
|
3096
|
+
prerelease: false
|
3097
|
+
- !ruby/object:Gem::Dependency
|
3098
|
+
type: :development
|
3099
|
+
requirement: &id206 !ruby/object:Gem::Requirement
|
3100
|
+
none: false
|
3101
|
+
requirements:
|
3102
|
+
- - ~>
|
3103
|
+
- !ruby/object:Gem::Version
|
3104
|
+
hash: 7
|
3105
|
+
segments:
|
3106
|
+
- 1
|
3107
|
+
- 5
|
3108
|
+
- 2
|
3109
|
+
version: 1.5.2
|
3110
|
+
name: jeweler
|
3111
|
+
version_requirements: *id206
|
3112
|
+
prerelease: false
|
3113
|
+
- !ruby/object:Gem::Dependency
|
3114
|
+
type: :development
|
3115
|
+
requirement: &id207 !ruby/object:Gem::Requirement
|
3116
|
+
none: false
|
3117
|
+
requirements:
|
3118
|
+
- - ">="
|
3119
|
+
- !ruby/object:Gem::Version
|
3120
|
+
hash: 3
|
3121
|
+
segments:
|
3122
|
+
- 0
|
3123
|
+
version: "0"
|
3124
|
+
name: rcov
|
3125
|
+
version_requirements: *id207
|
3126
|
+
prerelease: false
|
2947
3127
|
description: Creates a separate table that saves all your dynamic attributes.
|
2948
3128
|
email: ramon@tayag.net
|
2949
3129
|
executables: []
|