Module: Rails::ConsoleMethods
- Defined in:
- lib/rails/console/app.rb,
lib/rails/console/helpers.rb
Instance Method Summary collapse
-
#app(create = false) ⇒ Object
reference the global “app” instance, created on demand.
-
#controller ⇒ Object
Gets a new instance of a controller object.
-
#helper ⇒ Object
Gets the helper methods available to the controller.
-
#new_session {|session| ... } ⇒ Object
create a new session.
-
#reload!(print = true) ⇒ Object
reloads the environment.
Instance Method Details
#app(create = false) ⇒ Object
reference the global “app” instance, created on demand. To recreate the instance, pass a non-false value as the parameter.
8 9 10 11 12 13 |
# File 'lib/rails/console/app.rb', line 8 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 ⇒ Object
Gets a new instance of a controller object.
This method assumes an ApplicationController
exists, and it extends ActionController::Base
13 14 15 |
# File 'lib/rails/console/helpers.rb', line 13 def controller @controller ||= ApplicationController.new end |
#helper ⇒ Object
Gets the helper methods available to the controller.
This method assumes an ApplicationController
exists, and it extends ActionController::Base
6 7 8 |
# File 'lib/rails/console/helpers.rb', line 6 def helper ApplicationController.helpers end |
#new_session {|session| ... } ⇒ Object
create a new session. If a block is given, the new session will be yielded to the block before being returned.
17 18 19 20 21 22 23 24 25 26 27 |
# File 'lib/rails/console/app.rb', line 17 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) ⇒ Object
reloads the environment
30 31 32 33 34 |
# File 'lib/rails/console/app.rb', line 30 def reload!(print=true) puts "Reloading..." if print Rails.application.reloader.reload! true end |