class Rails::Console
Attributes
[R] | app |
|
[R] | console |
|
[R] | options |
Public class methods
Source code GitHub
# File railties/lib/rails/commands/console/console_command.rb, line 21
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 "irb"
require "irb/completion"
IRB::WorkSpace.prepend(BacktraceCleaner)
if !Rails.env.local?
ENV["IRB_USE_AUTOCOMPLETE"] ||= "false"
end
IRB
end
end
Source code GitHub
# File railties/lib/rails/commands/console/console_command.rb, line 15
def self.start(*args)
new(*args).start
end
Public instance methods
Also aliased as:
environment?
.
Source code GitHub
# File railties/lib/rails/commands/console/console_command.rb, line 56
def environment
options[:environment]
end
Alias for:
environment
.
Source code GitHub
# File railties/lib/rails/commands/console/console_command.rb, line 48
def sandbox?
return options[:sandbox] if !options[:sandbox].nil?
return false if Rails.env.local?
app.config.sandbox_by_default
end
Source code GitHub
# File railties/lib/rails/commands/console/console_command.rb, line 61
def set_environment!
Rails.env = environment
end
Source code GitHub
# File railties/lib/rails/commands/console/console_command.rb, line 65
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