enum_fields 0.0.3 → 0.0.5
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.
- checksums.yaml +4 -4
- data/README.md +5 -0
- data/lib/enum_fields/base.rb +1 -1
- data/lib/enum_fields/enum_field.rb +13 -0
- data/lib/enum_fields/version.rb +1 -1
- metadata +2 -3
- data/___DEPLOY.md +0 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 4d2ba45a5964fee807097e941cd817f7e1df72ace9094c8bf2620c7462bd06d2
|
|
4
|
+
data.tar.gz: 4b9c320af51de403c10631881531efe3455d2ac5946df3b5798d03e825e06ce3
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 6d16f74b5eb526d1cd7ea287a75b5a261679d432be001736b13e0ce52f442bc5806176e8e5020ae605b475eea608f83af25cd487eed1d181d50af30ad1a24dbf
|
|
7
|
+
data.tar.gz: e5ea072511fa65e0ea6f5221f9c39406af917533aecca0a6e962be8bf743fc17740033b32064d59579fac25f5cebfd337e2eb002b96546e14bd830275d8bc34e
|
data/README.md
CHANGED
|
@@ -156,6 +156,11 @@ Campaign.stages_values # ['draft', 'scheduled', 'completed']
|
|
|
156
156
|
|
|
157
157
|
# Returns the options for form helpers
|
|
158
158
|
Campaign.stages_options # [['Draft', 'draft'], ['Scheduled', 'scheduled'], ['Completed', 'completed']]
|
|
159
|
+
|
|
160
|
+
# Returns the value for a specific key
|
|
161
|
+
Campaign.draft_stage_value # 'draft'
|
|
162
|
+
Campaign.scheduled_stage_value # 'scheduled'
|
|
163
|
+
Campaign.completed_stage_value # 'completed'
|
|
159
164
|
```
|
|
160
165
|
|
|
161
166
|
#### Instance Getter/Setter
|
data/lib/enum_fields/base.rb
CHANGED
|
@@ -16,6 +16,7 @@ module EnumFields
|
|
|
16
16
|
def define!
|
|
17
17
|
store_definition!
|
|
18
18
|
define_class_methods!
|
|
19
|
+
define_class_value_accessors!
|
|
19
20
|
define_instance_getter!
|
|
20
21
|
define_instance_setter!
|
|
21
22
|
define_metadata_methods!
|
|
@@ -54,6 +55,18 @@ module EnumFields
|
|
|
54
55
|
end
|
|
55
56
|
end
|
|
56
57
|
|
|
58
|
+
def define_class_value_accessors!
|
|
59
|
+
accessor = @accessor
|
|
60
|
+
|
|
61
|
+
@definition.each do |key, metadata|
|
|
62
|
+
definition_value = metadata[:value]
|
|
63
|
+
|
|
64
|
+
@model_class.define_singleton_method("#{key}_#{accessor}_value") do
|
|
65
|
+
definition_value
|
|
66
|
+
end
|
|
67
|
+
end
|
|
68
|
+
end
|
|
69
|
+
|
|
57
70
|
def define_instance_getter!
|
|
58
71
|
return if @accessor == @column_name
|
|
59
72
|
|
data/lib/enum_fields/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: enum_fields
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.0.
|
|
4
|
+
version: 0.0.5
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Kinnell Shah
|
|
@@ -63,7 +63,6 @@ files:
|
|
|
63
63
|
- CHANGELOG.md
|
|
64
64
|
- LICENSE
|
|
65
65
|
- README.md
|
|
66
|
-
- ___DEPLOY.md
|
|
67
66
|
- lib/enum_fields.rb
|
|
68
67
|
- lib/enum_fields/base.rb
|
|
69
68
|
- lib/enum_fields/definition.rb
|
|
@@ -94,7 +93,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
94
93
|
- !ruby/object:Gem::Version
|
|
95
94
|
version: '2.0'
|
|
96
95
|
requirements: []
|
|
97
|
-
rubygems_version:
|
|
96
|
+
rubygems_version: 4.0.3
|
|
98
97
|
specification_version: 4
|
|
99
98
|
summary: Enhanced enum-like fields for ActiveRecord models with metadata support
|
|
100
99
|
test_files: []
|
data/___DEPLOY.md
DELETED