Sha256: ca063db4b4b15fdf204df477f77906953ac4d7f8da8ee9d80eda064621cfec7a

Contents?: true

Size: 706 Bytes

Versions: 23

Compression:

Stored size: 706 Bytes

Contents

class Ridgepole::DefaultsLimit
  DEFAULTS_LIMITS = {
    :mysql2 => {
      :boolean => 1,
      :integer => 4,
      :bigint  => 8,
      :float   => 24,
      :string  => 255,
      :text    => 65535,
      :binary  => 65535,
    }
  }

  class << self
    def default_limit(column_type, options)
      defaults = DEFAULTS_LIMITS[adapter] || {}
      option_key = :"default_#{column_type}_limit"
      default_limit = options[option_key] || defaults[column_type] || 0
      default_limit.zero? ? nil : default_limit
    end

    def adapter
      ActiveRecord::Base.connection_config.fetch(:adapter).to_sym
    rescue ActiveRecord::ConnectionNotEstablished
      nil
    end
  end # of class methods
end

Version data entries

23 entries across 23 versions & 1 rubygems

Version Path
ridgepole-0.7.3.beta lib/ridgepole/default_limit.rb
ridgepole-0.7.2 lib/ridgepole/default_limit.rb
ridgepole-0.7.2.beta lib/ridgepole/default_limit.rb
ridgepole-0.7.1 lib/ridgepole/default_limit.rb
ridgepole-0.7.1.beta5 lib/ridgepole/default_limit.rb
ridgepole-0.7.1.beta4 lib/ridgepole/default_limit.rb
ridgepole-0.7.1.beta3 lib/ridgepole/default_limit.rb
ridgepole-0.7.1.beta2 lib/ridgepole/default_limit.rb
ridgepole-0.7.1.beta lib/ridgepole/default_limit.rb
ridgepole-0.7.0 lib/ridgepole/default_limit.rb
ridgepole-0.7.0.rc1 lib/ridgepole/default_limit.rb
ridgepole-0.7.0.beta22 lib/ridgepole/default_limit.rb
ridgepole-0.7.0.beta21 lib/ridgepole/default_limit.rb
ridgepole-0.7.0.beta20 lib/ridgepole/default_limit.rb
ridgepole-0.7.0.beta19 lib/ridgepole/default_limit.rb
ridgepole-0.7.0.beta18 lib/ridgepole/default_limit.rb
ridgepole-0.7.0.beta17 lib/ridgepole/default_limit.rb
ridgepole-0.7.0.beta16 lib/ridgepole/default_limit.rb
ridgepole-0.7.0.beta15 lib/ridgepole/default_limit.rb
ridgepole-0.7.0.beta14 lib/ridgepole/default_limit.rb