Class: Schematic::Generator::Restrictions::Enumeration
- Inherits:
-
Base
- Object
- ColumnValidator
- Base
- Schematic::Generator::Restrictions::Enumeration
- Defined in:
- lib/schematic/generator/restrictions/enumeration.rb
Instance Attribute Summary
Attributes inherited from ColumnValidator
Instance Method Summary collapse
Methods inherited from Base
Methods inherited from ColumnValidator
#for_validator, #initialize, #validators_for_column
Constructor Details
This class inherits a constructor from Schematic::Generator::ColumnValidator
Instance Method Details
#generate(builder) ⇒ Object
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
# File 'lib/schematic/generator/restrictions/enumeration.rb', line 5 def generate(builder) for_validator ActiveModel::Validations::InclusionValidator do |validator| next if column.type == :boolean next if validator.[:in].respond_to?(:call) validator.[:in].each do |value| builder.xs(:enumeration, "value" => value) end end enumeration_method = "xsd_#{column.name}_enumeration_restrictions".to_sym if klass.respond_to? enumeration_method klass.send(enumeration_method).each do |enumeration| builder.xs(:enumeration, "value" => enumeration) end end end |