Skip to Content Skip to Search
Namespace
Methods
B
E
N
S

Constants

HELP_HINT = "Type 'help' for help."
 

Attributes

[R] app
[R] console
[R] options

Class Public methods

new(app, options = {})

# File railties/lib/rails/commands/console/console_command.rb, line 15
def initialize(app, options = {})
  @app     = app
  @options = options

  app.sandbox = sandbox?

  if sandbox? && app.config.disable_sandbox
    puts "Error: Unable to start console in sandbox mode as sandbox mode is disabled (config.disable_sandbox is true)."
    exit 1
  end

  app.load_console

  @console = app.config.console || begin
    require "rails/commands/console/irb_console"
    IRBConsole.new(app, options)
  end
end

start(*args)

# File railties/lib/rails/commands/console/console_command.rb, line 9
def self.start(*args)
  new(*args).start
end

startup_lines(sandbox)

# File railties/lib/rails/commands/console/console_command.rb, line 34
def self.startup_lines(sandbox)
  lines = if sandbox
    ["Loading #{Rails.env} environment in sandbox (Rails #{Rails.version})",
     "Any modifications you make will be rolled back on exit"]
  else
    ["Loading #{Rails.env} environment (Rails #{Rails.version})"]
  end
  lines << HELP_HINT
end

Instance Public methods

banner?()

Whether to print a startup banner. Defaults to true; pass --no-banner to suppress it for one-off sessions.

# File railties/lib/rails/commands/console/console_command.rb, line 63
def banner?
  options.fetch(:banner, true)
end

environment()

Also aliased as: environment?
# File railties/lib/rails/commands/console/console_command.rb, line 52
def environment
  options[:environment]
end

environment?()

Alias for: environment

sandbox?()

# File railties/lib/rails/commands/console/console_command.rb, line 44
def sandbox?
  return options[:sandbox] if !options[:sandbox].nil?

  return false if Rails.env.local?

  app.config.sandbox_by_default
end

set_environment!()

# File railties/lib/rails/commands/console/console_command.rb, line 57
def set_environment!
  Rails.env = environment
end

show_default_startup_banner()

# File railties/lib/rails/commands/console/console_command.rb, line 67
def show_default_startup_banner
  puts Rails::Console.startup_lines(sandbox?)
end

start()

# File railties/lib/rails/commands/console/console_command.rb, line 71
def start
  set_environment! if environment?

  if banner?
    show_default_startup_banner unless console.respond_to?(:show_startup_banner)
  end

  console.start
end