module ContentfulModel::Validations::ClassMethods

Class methods for Validations

Public Instance Methods

save_validations() click to toggle source
# File lib/contentful_model/validations/validations.rb, line 51
def save_validations
  @save_validations
end
validate(name, fn = nil, on_load: false, &block) click to toggle source
# File lib/contentful_model/validations/validations.rb, line 73
def validate(name, fn = nil, on_load: false, &block)
  vs = []
  fail '::validate requires either a function or a block sent as a validation' if fn.nil? && block.nil?

  vs << ::Contentful::Validations::LambdaValidation.new(name, fn) unless fn.nil?
  vs << ::Contentful::Validations::LambdaValidation.new(name, block) unless block.nil?

  if on_load
    @validations ||= []
    @validations += vs
  else
    @save_validations ||= []
    @save_validations += vs
  end
end
validate_with(validation, on_load: false) click to toggle source
# File lib/contentful_model/validations/validations.rb, line 55
def validate_with(validation, on_load: false)
  if validation.is_a?(Class)
    validation = validation.new
  elsif validation.respond_to?(:validate)
    validation = validation
  else
    fail '::validate_with requires a Class or object that responds to #validate(entry)'
  end

  if on_load
    @validations ||= []
    @validations << validation
  else
    @save_validations ||= []
    @save_validations << validation
  end
end
validations() click to toggle source
# File lib/contentful_model/validations/validations.rb, line 47
def validations
  @validations
end