Module: BetterSeeder::Utils

Defined in:
lib/better_seeder/utils.rb,
lib/better_seeder/utils/store.rb,
lib/better_seeder/utils/common.rb

Defined Under Namespace

Modules: Common, Store

Class Method Summary collapse

Class Method Details

.log_level_setupObject

Configura il livello del logger per ActiveRecord in base alla configurazione definita in BetterSeeder.

Dettagli

Il metodo imposta il livello del logger in base al valore di BetterSeeder.configuration.log_level:

  • :debug -> Logger::DEBUG

  • :info -> Logger::INFO

  • :error -> Logger::ERROR

Se il livello non corrisponde a nessuna delle opzioni previste, viene impostato il livello Logger::DEBUG.



63
64
65
66
67
68
69
70
71
72
# File 'lib/better_seeder/utils.rb', line 63

def log_level_setup
  level = case BetterSeeder.configuration.log_level
          when :debug then Logger::DEBUG
          when :info then Logger::INFO
          when :error then Logger::ERROR
          else Logger::DEBUG
          end

  ActiveRecord::Base.logger.level = level
end

.logger(message: nil) ⇒ Object

Registra un messaggio usando il logger di Rails se disponibile, altrimenti lo stampa su standard output.

Parametri

  • message - Il messaggio da loggare (può essere una stringa o nil).

Ritorno

Non ritorna un valore significativo.



45
46
47
48
49
50
51
# File 'lib/better_seeder/utils.rb', line 45

def logger(message: nil)
  if defined?(Rails) && Rails.respond_to?(:logger) && Rails.logger
    Rails.logger.info message
  else
    puts message
  end
end

.transform_class_name(class_name) ⇒ Object

Trasforma un nome di classe in snake_case e aggiunge il suffisso “_structure.rb”.

Esempio

transform_class_name("Campaigns::Campaign")
# => "campaigns/campaign_structure.rb"

Parametri

  • class_name - Stringa che rappresenta il nome della classe, eventualmente suddiviso in namespace separati da “::”.

Ritorno

Restituisce una stringa con il nome della classe in formato snake_case e l’ultimo elemento terminato con “_structure.rb”.



29
30
31
32
33
34
# File 'lib/better_seeder/utils.rb', line 29

def transform_class_name(class_name)
  elements     = class_name.split('::').map(&:underscore)
  # Aggiunge "_structure.rb" all'ultimo elemento
  elements[-1] = "#{elements[-1]}_structure.rb"
  elements.join('/')
end