Class: Ecm::Downloads::Routing

Inherits:
Object
  • Object
show all
Defined in:
lib/ecm/downloads/routing.rb

Class Method Summary collapse

Class Method Details

.routes(router, options = {}) ⇒ Object

Creates the routes for downloads and categories. You can pass options to specify the actions for both downloads and/or categories.

Ecm::Downloads::Routing.routes(self, { :download_category_actions => [ :show ]})

This will only create the show action for download categories, but omit the index action.


10
11
12
13
14
15
16
17
18
19
20
21
# File 'lib/ecm/downloads/routing.rb', line 10

def self.routes(router, options = {})
  options.reverse_merge!(
    download_category_actions: [:index, :show],
    download_actions: [:index, :show],
    add_download_member_action: false
  )

  router.resources :ecm_downloads_download_categories, only: options[:download_category_actions], controller: 'ecm/downloads/download_categories'
  router.resources :ecm_downloads_downloads, only: options[:download_actions], controller: 'ecm/downloads/downloads' do
    router.get :download, on: :member, if: options[:add_download_member_action]
  end
end