Module Sequel::Plugins::AutoValidations::InstanceMethods
In: lib/sequel/plugins/auto_validations.rb

Methods

validate  

Public Instance methods

Validate the model‘s auto validations columns

[Source]

     # File lib/sequel/plugins/auto_validations.rb, line 162
162:         def validate
163:           super
164:           opts = model.auto_validate_options
165: 
166:           unless (not_null_columns = model.auto_validate_not_null_columns).empty?
167:             if model.auto_validate_presence?
168:               validates_presence(not_null_columns, opts[:not_null])
169:             else
170:               validates_not_null(not_null_columns, opts[:not_null])
171:             end
172:           end
173:           unless (not_null_columns = model.auto_validate_explicit_not_null_columns).empty?
174:             if model.auto_validate_presence?
175:               validates_presence(not_null_columns, opts[:explicit_not_null])
176:             else
177:               validates_not_null(not_null_columns, opts[:explicit_not_null])
178:             end
179:           end
180:           unless (max_length_columns = model.auto_validate_max_length_columns).empty?
181:             max_length_columns.each do |col, len|
182:               validates_max_length(len, col, opts[:max_length])
183:             end
184:           end
185: 
186:           validates_schema_types(keys, opts[:schema_types]) if model.auto_validate_types?
187: 
188:           unique_opts = Hash[opts[:unique]]
189:           if model.respond_to?(:sti_dataset)
190:             unique_opts[:dataset] = model.sti_dataset
191:           end
192:           model.auto_validate_unique_columns.each{|cols| validates_unique(cols, unique_opts)}
193:         end

[Validate]