Class: ActionPage::BaseController
- Inherits:
-
ApplicationController
- Object
- ApplicationController
- ActionPage::BaseController
- Defined in:
- app/controllers/action_page/base_controller.rb
Class Method Summary collapse
Instance Method Summary collapse
- #index ⇒ Object
-
#initialize(*args) ⇒ BaseController
constructor
A new instance of BaseController.
- #show ⇒ Object
Constructor Details
#initialize(*args) ⇒ BaseController
Returns a new instance of BaseController.
19 20 21 22 |
# File 'app/controllers/action_page/base_controller.rb', line 19 def initialize(*args) super append_view_path("app/views/#{self.class.page_class.view_key}") end |
Class Method Details
.page_class ⇒ Object
10 11 12 13 14 15 16 17 |
# File 'app/controllers/action_page/base_controller.rb', line 10 def self.page_class @@page_class ||= begin page_class = name.sub(/Controller\z/, '') page_class.singularize.constantize rescue NameError raise #ActionPage::MissingPageClass.new(page: page_class) end end |
.renders_page(page) ⇒ Object
6 7 8 |
# File 'app/controllers/action_page/base_controller.rb', line 6 def self.renders_page(page) @@page_class = page end |
Instance Method Details
#index ⇒ Object
24 25 26 |
# File 'app/controllers/action_page/base_controller.rb', line 24 def index @pages = page_class.all end |
#show ⇒ Object
28 29 30 31 32 33 34 |
# File 'app/controllers/action_page/base_controller.rb', line 28 def show @page = page_class.find(params[:id]) if @page.nil? raise ActionController::RoutingError.new("Not Found") end render end |