module Sequel::Plugins::AutoValidations::InstanceMethods
Public Instance Methods
validate()
click to toggle source
Validate the model's auto validations columns
Calls superclass method
# File lib/sequel/plugins/auto_validations.rb 176 def validate 177 super 178 opts = model.auto_validate_options 179 180 unless (not_null_columns = model.auto_validate_not_null_columns).empty? 181 if model.auto_validate_presence? 182 validates_presence(not_null_columns, opts[:not_null]) 183 else 184 validates_not_null(not_null_columns, opts[:not_null]) 185 end 186 end 187 unless (not_null_columns = model.auto_validate_explicit_not_null_columns).empty? 188 if model.auto_validate_presence? 189 validates_presence(not_null_columns, opts[:explicit_not_null]) 190 else 191 validates_not_null(not_null_columns, opts[:explicit_not_null]) 192 end 193 end 194 unless (max_length_columns = model.auto_validate_max_length_columns).empty? 195 max_length_columns.each do |col, len| 196 validates_max_length(len, col, opts[:max_length]) 197 end 198 end 199 200 validates_schema_types(keys, opts[:schema_types]) if model.auto_validate_types? 201 202 unique_opts = Hash[opts[:unique]] 203 if model.respond_to?(:sti_dataset) 204 unique_opts[:dataset] = model.sti_dataset 205 end 206 model.auto_validate_unique_columns.each{|cols| validates_unique(cols, unique_opts)} 207 end