Module: Rails::ConsoleMethods
Relationships & Source Files | |
Defined in: | railties/lib/rails/console/app.rb, railties/lib/rails/console/helpers.rb |
Instance Method Summary
-
#app(create = false)
reference the global “app” instance, created on demand.
-
#controller
Gets a new instance of a controller object.
-
#helper
Gets the helper methods available to the controller.
-
#new_session {|session| ... }
create a new session.
-
#reload!(print = true)
reloads the environment.
Instance Method Details
#app(create = false)
reference the global “app” instance, created on demand. To recreate the instance, pass a non-false value as the parameter.
# File 'railties/lib/rails/console/app.rb', line 10
def app(create = false) @app_integration_instance = nil if create @app_integration_instance ||= new_session do |sess| sess.host! "www.example.com" end end
#controller
Gets a new instance of a controller object.
This method assumes an ApplicationController
exists, and it extends ::ActionController::Base
# File 'railties/lib/rails/console/helpers.rb', line 15
def controller @controller ||= ApplicationController.new end
#helper
Gets the helper methods available to the controller.
This method assumes an ApplicationController
exists, and it extends ::ActionController::Base
# File 'railties/lib/rails/console/helpers.rb', line 8
def helper ApplicationController.helpers end
#new_session {|session| ... }
create a new session. If a block is given, the new session will be yielded to the block before being returned.
# File 'railties/lib/rails/console/app.rb', line 19
def new_session app = Rails.application session = ActionDispatch::Integration::Session.new(app) yield session if block_given? # This makes app.url_for and app.foo_path available in the console session.extend(app.routes.url_helpers) session.extend(app.routes.mounted_helpers) session end
#reload!(print = true)
reloads the environment
# File 'railties/lib/rails/console/app.rb', line 32
def reload!(print = true) puts "Reloading..." if print Rails.application.reloader.reload! true end