edge badge
Methods
E
N
P
S
Included Modules
Attributes
[R] app
[R] console
[R] options
Class Public methods
new(app, options={})
# File railties/lib/rails/commands/console.rb, line 29
def initialize(app, options={})
  @app     = app
  @options = options

  app.sandbox = sandbox?
  app.load_console

  @console = app.config.console || IRB
end
parse_arguments(arguments)
# File railties/lib/rails/commands/console.rb, line 11
def parse_arguments(arguments)
  options = {}

  OptionParser.new do |opt|
    opt.banner = "Usage: rails console [environment] [options]"
    opt.on('-s', '--sandbox', 'Rollback database modifications on exit.') { |v| options[:sandbox] = v }
    opt.on("-e", "--environment=name", String,
            "Specifies the environment to run this console under (test/development/production).",
            "Default: development") { |v| options[:environment] = v.strip }
    opt.parse!(arguments)
  end

  set_options_env(arguments, options)
end
Instance Public methods
environment()
Also aliased as: environment?
# File railties/lib/rails/commands/console.rb, line 43
def environment
  options[:environment] ||= super
end
environment?()
Alias for: environment
sandbox?()
# File railties/lib/rails/commands/console.rb, line 39
def sandbox?
  options[:sandbox]
end
set_environment!()
# File railties/lib/rails/commands/console.rb, line 48
def set_environment!
  Rails.env = environment
end
start()
# File railties/lib/rails/commands/console.rb, line 52
def start
  set_environment! if environment?

  if sandbox?
    puts "Loading #{Rails.env} environment in sandbox (Rails #{Rails.version})"
    puts "Any modifications you make will be rolled back on exit"
  else
    puts "Loading #{Rails.env} environment (Rails #{Rails.version})"
  end

  if defined?(console::ExtendCommandBundle)
    console::ExtendCommandBundle.include(Rails::ConsoleMethods)
  end
  console.start
end