Sha256: 53f92942c9450a8e774a9aa3582466b188be53aeb84984e465c33f9d5cdb7635

Contents?: true

Size: 846 Bytes

Versions: 1

Compression:

Stored size: 846 Bytes

Contents

require "foreign_key_validation/version"
require "foreign_key_validation/errors"
require "foreign_key_validation/collector"
require "foreign_key_validation/filter"
require "foreign_key_validation/validator"
require "foreign_key_validation/model_extension"
require "ostruct"

module ForeignKeyValidation

  DEFAULT_CONFIG = {
    inject_subclasses: true,
    validate_against: :user,
    error_message: lambda { |key, reflection_name, object|
      "#{key} of #{reflection_name} does not match #{object.class.name.tableize} #{key}."
    }
  }

  class << self

    def configure
      yield configuration
    end

    def configuration
      @configuration ||= OpenStruct.new(DEFAULT_CONFIG)
    end

    def reset_configuration
      @configuration = nil
    end

  end
end

ActiveRecord::Base.send :include, ForeignKeyValidation::ModelExtension

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
foreign_key_validation-1.1.2 lib/foreign_key_validation.rb