class Algernon::BaseController
Attributes
request[R]
Public Class Methods
new(request)
click to toggle source
# File lib/algernon/controller/base_controller.rb, line 7 def initialize(request) @request = request end
Public Instance Methods
controller_for_views()
click to toggle source
# File lib/algernon/controller/base_controller.rb, line 42 def controller_for_views controller_class = self.class controller_class = controller_class.to_s.gsub(/Controller$/, "") controller_class.snakify end
get_response()
click to toggle source
# File lib/algernon/controller/base_controller.rb, line 11 def get_response @response end
params()
click to toggle source
# File lib/algernon/controller/base_controller.rb, line 38 def params request.params.with_indifferent_access end
redirect_to(destination)
click to toggle source
# File lib/algernon/controller/base_controller.rb, line 34 def redirect_to(destination) response_setter([], 302, "Location" => destination) end
render(*args)
click to toggle source
# File lib/algernon/controller/base_controller.rb, line 15 def render(*args) response_setter(render_template(*args)) end
render_template(view_name, locals = {})
click to toggle source
# File lib/algernon/controller/base_controller.rb, line 19 def render_template(view_name, locals = {}) filename = File.join(APP_ROOT, "app", "views", controller_for_views, "#{view_name}.html.erb" ) template = Tilt::ErubisTemplate.new(filename) template.render(self, locals) end
response_setter(body, status = 200, headers = {})
click to toggle source
# File lib/algernon/controller/base_controller.rb, line 30 def response_setter(body, status = 200, headers = {}) @response = Rack::Response.new(body, status, headers) end