power_enum 0.9.1 → 0.9.2
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.markdown +12 -1
- data/lib/generators/virtual_enumerations_initializer/USAGE +14 -0
- data/lib/generators/virtual_enumerations_initializer/templates/virtual_enumerations.rb.erb +17 -0
- data/lib/generators/virtual_enumerations_initializer/virtual_enumerations_initializer_generator.rb +14 -0
- metadata +6 -3
data/README.markdown
CHANGED
@@ -82,7 +82,9 @@ In the following example, we'll look at a Booking that can have several types of
|
|
82
82
|
|
83
83
|
Invoke the generator to create a basic enum:
|
84
84
|
|
85
|
-
|
85
|
+
```bash
|
86
|
+
rails generate enum booking_status
|
87
|
+
```
|
86
88
|
|
87
89
|
You should see output similar to this:
|
88
90
|
|
@@ -563,6 +565,15 @@ you can use ActiveRecord::VirtualEnumerations to reduce that clutter.
|
|
563
565
|
|
564
566
|
Create a custom Rails initializer: Rails.root/config/initializers/virtual\_enumerations.rb
|
565
567
|
|
568
|
+
As of version 0.9.2, there is a built in generator for this:
|
569
|
+
|
570
|
+
```bash
|
571
|
+
rails generate virtual_enumerations_initializer
|
572
|
+
```
|
573
|
+
|
574
|
+
Configure as appropriate.
|
575
|
+
|
576
|
+
|
566
577
|
```ruby
|
567
578
|
ActiveRecord::VirtualEnumerations.define do |config|
|
568
579
|
|
@@ -0,0 +1,14 @@
|
|
1
|
+
Description:
|
2
|
+
Create the VirtualEnumerations initializer for PowerEnum.
|
3
|
+
|
4
|
+
Example:
|
5
|
+
rails generate virtual_enumerations_initializer
|
6
|
+
|
7
|
+
This will create:
|
8
|
+
VirtualEnumerations initializer: config/initializers/virtual_enumerations.rb
|
9
|
+
|
10
|
+
Example 2:
|
11
|
+
rails generate virtual_enumerations_initializer power_enum_init
|
12
|
+
|
13
|
+
This will create:
|
14
|
+
VirtualEnumerations initializer: config/initializers/power_enum_init.rb
|
@@ -0,0 +1,17 @@
|
|
1
|
+
# Initializer for virtual enum classes.
|
2
|
+
#
|
3
|
+
# See ActiveRecord::VirtualEnumerations.define in PowerEnum.
|
4
|
+
ActiveRecord::VirtualEnumerations.define do |config|
|
5
|
+
#
|
6
|
+
# config.define 'ClassName',
|
7
|
+
# :table_name => 'table',
|
8
|
+
# :extends => 'SuperclassName',
|
9
|
+
# :conditions => ['something = ?', "value"],
|
10
|
+
# :order => 'column ASC',
|
11
|
+
# :on_lookup_failure => :enforce_strict,
|
12
|
+
# :name_column => 'name_column',
|
13
|
+
# :alias_name => false {
|
14
|
+
# # class_evaled_functions
|
15
|
+
# }
|
16
|
+
#
|
17
|
+
end
|
data/lib/generators/virtual_enumerations_initializer/virtual_enumerations_initializer_generator.rb
ADDED
@@ -0,0 +1,14 @@
|
|
1
|
+
# Copyright (c) 2011 Arthur Shagall
|
2
|
+
# Released under the MIT license. See LICENSE for details.
|
3
|
+
|
4
|
+
# Generator for the VirtualEnumerations initializer
|
5
|
+
class VirtualEnumerationsInitializerGenerator < Rails::Generators::Base
|
6
|
+
source_root File.expand_path('../templates', __FILE__)
|
7
|
+
|
8
|
+
argument :initializer_name, :type => :string, :default => 'virtual_enumerations'
|
9
|
+
|
10
|
+
def generate_virtual_enum_initializer
|
11
|
+
template 'virtual_enumerations.rb.erb', "config/initializers/#{initializer_name}.rb"
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: power_enum
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.9.
|
4
|
+
version: 0.9.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -12,7 +12,7 @@ authors:
|
|
12
12
|
autorequire:
|
13
13
|
bindir: bin
|
14
14
|
cert_chain: []
|
15
|
-
date: 2012-09-
|
15
|
+
date: 2012-09-22 00:00:00.000000000 Z
|
16
16
|
dependencies:
|
17
17
|
- !ruby/object:Gem::Dependency
|
18
18
|
name: rails
|
@@ -119,6 +119,9 @@ files:
|
|
119
119
|
- lib/generators/enum/templates/model.rb.erb
|
120
120
|
- lib/generators/enum/templates/rails30_migration.rb.erb
|
121
121
|
- lib/generators/enum/templates/rails31_migration.rb.erb
|
122
|
+
- lib/generators/virtual_enumerations_initializer/USAGE
|
123
|
+
- lib/generators/virtual_enumerations_initializer/templates/virtual_enumerations.rb.erb
|
124
|
+
- lib/generators/virtual_enumerations_initializer/virtual_enumerations_initializer_generator.rb
|
122
125
|
- lib/power_enum.rb
|
123
126
|
- lib/power_enum/enumerated.rb
|
124
127
|
- lib/power_enum/has_enumerated.rb
|
@@ -142,7 +145,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
142
145
|
version: '0'
|
143
146
|
segments:
|
144
147
|
- 0
|
145
|
-
hash: -
|
148
|
+
hash: -4218676546768787093
|
146
149
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
147
150
|
none: false
|
148
151
|
requirements:
|