Module: Rails

Defined in:
railties/lib/rails.rb,
railties/lib/rails/rack.rb,
railties/lib/rails/info.rb,
railties/lib/rails/paths.rb,
railties/lib/rails/engine.rb,
railties/lib/rails/plugin.rb,
railties/lib/rails/version.rb,
railties/lib/rails/railtie.rb,
railties/lib/rails/generators.rb,
railties/lib/rails/application.rb,
railties/lib/rails/rack/logger.rb,
railties/lib/rails/rack/debugger.rb,
railties/lib/rails/configuration.rb,
railties/lib/rails/initializable.rb,
railties/lib/rails/rack/log_tailer.rb,
railties/lib/rails/generators/base.rb,
railties/lib/rails/commands/server.rb,
railties/lib/rails/engine/railties.rb,
railties/lib/rails/commands/console.rb,
railties/lib/rails/test_unit/railtie.rb,
railties/lib/rails/backtrace_cleaner.rb,
railties/lib/rails/generators/actions.rb,
railties/lib/rails/commands/dbconsole.rb,
railties/lib/rails/rack/content_length.rb,
railties/lib/rails/script_rails_loader.rb,
railties/lib/rails/generators/app_base.rb,
railties/lib/rails/commands/application.rb,
railties/lib/rails/application/finisher.rb,
railties/lib/rails/application/railties.rb,
railties/lib/rails/engine/configuration.rb,
railties/lib/rails/generators/migration.rb,
railties/lib/rails/generators/test_case.rb,
railties/lib/rails/railtie/configurable.rb,
railties/lib/rails/railtie/configuration.rb,
railties/lib/rails/application/bootstrap.rb,
railties/lib/rails/generators/named_base.rb,
railties/lib/rails/generators/active_model.rb,
railties/lib/rails/application/configuration.rb,
railties/lib/rails/application/routes_reloader.rb,
railties/lib/rails/generators/resource_helpers.rb,
railties/lib/rails/generators/generated_attribute.rb,
railties/lib/rails/generators/rails/app/app_generator.rb,
actionmailer/lib/rails/generators/mailer/mailer_generator.rb,
railties/lib/rails/generators/rails/model/model_generator.rb,
railties/lib/rails/generators/rails/assets/assets_generator.rb,
railties/lib/rails/generators/rails/helper/helper_generator.rb,
railties/lib/rails/generators/rails/plugin/plugin_generator.rb,
railties/lib/rails/generators/rails/resource/resource_generator.rb,
railties/lib/rails/generators/rails/observer/observer_generator.rb,
railties/lib/rails/generators/rails/scaffold/scaffold_generator.rb,
railties/lib/rails/generators/rails/generator/generator_generator.rb,
railties/lib/rails/generators/rails/migration/migration_generator.rb,
railties/lib/rails/generators/rails/plugin_new/plugin_new_generator.rb,
railties/lib/rails/generators/rails/controller/controller_generator.rb,
railties/lib/rails/generators/rails/performance_test/performance_test_generator.rb,
railties/lib/rails/generators/rails/integration_test/integration_test_generator.rb,
railties/lib/rails/generators/rails/session_migration/session_migration_generator.rb,
railties/lib/rails/generators/rails/scaffold_controller/scaffold_controller_generator.rb

Defined Under Namespace

Modules: ActionMethods, BacktraceFilterForTestUnit, Configuration, Generators, Info, Initializable, Paths, Rack, ScriptRailsLoader, VERSION Classes: AppBuilder, Application, BacktraceCleaner, Console, DBConsole, Engine, InfoController, Plugin, PluginBuilder, Railtie, Server, TestUnitRailtie

Class Method Summary collapse

Class Method Details

.applicationObject



36
37
38
# File 'railties/lib/rails.rb', line 36

def application
  @@application ||= nil
end

.application=(application) ⇒ Object



40
41
42
# File 'railties/lib/rails.rb', line 40

def application=(application)
  @@application = application
end

.backtrace_cleanerObject



69
70
71
72
73
74
75
# File 'railties/lib/rails.rb', line 69

def backtrace_cleaner
  @@backtrace_cleaner ||= begin
    # Relies on Active Support, so we have to lazy load to postpone definition until AS has been loaded
    require 'rails/backtrace_cleaner'
    Rails::BacktraceCleaner.new
  end
end

.cacheObject



89
90
91
# File 'railties/lib/rails.rb', line 89

def cache
  RAILS_CACHE
end

.configurationObject

The Configuration instance used to configure the Rails environment



45
46
47
# File 'railties/lib/rails.rb', line 45

def configuration
  application.config
end

.envObject



81
82
83
# File 'railties/lib/rails.rb', line 81

def env
  @_env ||= ActiveSupport::StringInquirer.new(ENV["RAILS_ENV"] || ENV["RACK_ENV"] || "development")
end

.env=(environment) ⇒ Object



85
86
87
# File 'railties/lib/rails.rb', line 85

def env=(environment)
  @_env = ActiveSupport::StringInquirer.new(environment)
end

.groups(*groups) ⇒ Object

Returns all rails groups for loading based on:

  • The Rails environment;

  • The environment variable RAILS_GROUPS;

  • The optional envs given as argument and the hash with group dependencies;

Examples

groups :assets => [:development, :test]

# Returns
# => [:default, :development, :assets] for Rails.env == "development"
# => [:default, :production]           for Rails.env == "production"


107
108
109
110
111
112
113
114
115
116
# File 'railties/lib/rails.rb', line 107

def groups(*groups)
  hash = groups.extract_options!
  env = Rails.env
  groups.unshift(:default, env)
  groups.concat ENV["RAILS_GROUPS"].to_s.split(",")
  groups.concat hash.map { |k,v| k if v.map(&:to_s).include?(env) }
  groups.compact!
  groups.uniq!
  groups
end

.initialize!Object



49
50
51
# File 'railties/lib/rails.rb', line 49

def initialize!
  application.initialize!
end

.initialized=(initialized) ⇒ Object



57
58
59
# File 'railties/lib/rails.rb', line 57

def initialized=(initialized)
  @@initialized ||= initialized
end

.initialized?Boolean

Returns:

  • (Boolean)


53
54
55
# File 'railties/lib/rails.rb', line 53

def initialized?
  @@initialized || false
end

.loggerObject



61
62
63
# File 'railties/lib/rails.rb', line 61

def logger
  @@logger ||= nil
end

.logger=(logger) ⇒ Object



65
66
67
# File 'railties/lib/rails.rb', line 65

def logger=(logger)
  @@logger = logger
end

.public_pathObject



122
123
124
# File 'railties/lib/rails.rb', line 122

def public_path
  application && application.paths["public"].first
end

.rootObject



77
78
79
# File 'railties/lib/rails.rb', line 77

def root
  application && application.config.root
end

.versionObject



118
119
120
# File 'railties/lib/rails.rb', line 118

def version
  VERSION::STRING
end