Module: BetterController::Configuration

Defined in:
lib/better_controller/configuration.rb

Overview

Configuration module for BetterController

Constant Summary collapse

DEFAULTS =

Default configuration options

{
  pagination:     {
    enabled:  true,
    per_page: 25,
  },
  serialization:  {
    include_root:  false,
    camelize_keys: true,
  },
  error_handling: {
    log_errors:      true,
    detailed_errors: true,
  },
}.freeze

Class Method Summary collapse

Class Method Details

.configure {|config| ... } ⇒ Object

Configure BetterController

Yields:

  • (config)

    The configuration block



31
32
33
# File 'lib/better_controller/configuration.rb', line 31

def configure
  yield(options) if block_given?
end

.error_handlingHash

Get the error handling configuration

Returns:

  • (Hash)

    The error handling configuration



65
66
67
# File 'lib/better_controller/configuration.rb', line 65

def self.error_handling
  options[:error_handling]
end

.optionsHash

Get the current configuration

Returns:

  • (Hash)

    The current configuration



25
26
27
# File 'lib/better_controller/configuration.rb', line 25

def options
  @options ||= DEFAULTS.deep_dup
end

.paginationHash

Get the pagination configuration

Returns:

  • (Hash)

    The pagination configuration



53
54
55
# File 'lib/better_controller/configuration.rb', line 53

def self.pagination
  options[:pagination]
end

.reset!Object

Reset the configuration to defaults



36
37
38
# File 'lib/better_controller/configuration.rb', line 36

def reset!
  @options = DEFAULTS.deep_dup
end

.serializationHash

Get the serialization configuration

Returns:

  • (Hash)

    The serialization configuration



59
60
61
# File 'lib/better_controller/configuration.rb', line 59

def self.serialization
  options[:serialization]
end