Refactoring routes question

Hi,

I am wondering if there is any refactoring possible in the following routes as there seems to be a lot of redundancy in the code. I am learning on my own so the answer may be obvious and I appreciate the help.

# Routes for navigating contents: #Books   get 'contents/index_books/:subject_id', to: 'contents#index_books', :as => :index_books   get 'contents/:id/edit_book', to: "contents#edit_book", :as => :edit_book   patch 'contents/:id/update_book', to: "contents#update_book", :as => :update_book   get 'contents/:subject_id/new_book', to: "contents#new_book", :as => :new_book   post 'contents/create_book', to: "contents#create_book", :as => :create_book   delete 'contents/:id/destroy_book', to: "contents#destroy_book", :as => :destroy_book

#Chapters   get 'chapters/index_chapters/:book_id', to: 'contents#index_chapters', :as => :index_chapters   get 'contents/:id/edit_chapter', to: "contents#edit_chapter", :as => :edit_chapter   patch 'contents/:id/update_chapter', to: "contents#update_chapter", :as => :update_chapter   get 'contents/:book_id/new_chapter', to: "contents#new_chapter", :as => :new_chapter   post 'contents/create_chapter', to: "contents#create_chapter", :as => :create_chapter   delete 'contents/:id/destroy_chapter', to: "contents#destroy_chapter", :as => :destroy_chapter

#Sections   get 'contents/index_sections/:chapter_id', to: "contents#index_sections", :as => :index_sections   get 'contents/:id/edit_section', to: "contents#edit_section", :as => :edit_section   patch 'contents/:id/update_section', to: "contents#update_section", :as => :update_section   get 'contents/:chapter_id/new_section', to: "contents#new_section", :as => :new_section   post 'contents/create_section', to: "contents#create_section", :as => :create_section   delete 'contents/:id/destroy_section', to: "contents#destroy_section", :as => :destroy_section

#Subsections   get 'contents/index_subsections/:section_id', to: "contents#index_subsections", :as => :index_subsections   get 'contents/:id/edit_subsection', to: "contents#edit_subsection", :as => :edit_subsection   patch 'contents/:id/update_subsection', to: "contents#update_subsection", :as => :update_subsection   get 'contents/:section_id/new_subsection', to: "contents#new_subsection", :as => :new_subsection   post 'contents/create_subsection', to: "contents#create_subsection", :as => :create_subsection   delete 'contents/:id/destroy_subsection', to: "contents#destroy_subsection", :as => :destroy_subsection

#Minisections   get 'contents/index_minisections/:subsection_id', to: "contents#index_minisections", :as => :index_minisections   get 'contents/:id/edit_minisection', to: "contents#edit_minisection", :as => :edit_minisection   patch 'contents/:id/update_minisection', to: "contents#update_minisection", :as => :update_minisection   get 'contents/:subsection_id/new_minisection', to: "contents#new_minisection", :as => :new_minisection   post 'contents/create_minisection', to: "contents#create_minisection", :as => :create_minisection   delete 'contents/:id/destroy_minisection', to: "contents#destroy_minisection", :as => :destroy_minisection Dave

You can use the scope with contents, so it will refactor I bit not much, but a least is something.

scope ‘contents’ do

get ‘index_books/:subject_id’, to: ‘contents#index_books’, :as => :index_books

get ‘:id/edit_book’, to: “contents#edit_book”, :as => :edit_book

patch ‘:id/update_book’, to: “contents#update_book”, :as => :update_book

get ‘:subject_id/new_book’, to: “contents#new_book”, :as => :new_book

post ‘create_book’, to: “contents#create_book”, :as => :create_book

delete ‘:id/destroy_book’, to: “contents#destroy_book”, :as => :destroy_book

get ‘:id/edit_chapter’, to: “contents#edit_chapter”, :as => :edit_chapter

patch ‘:id/update_chapter’, to: “contents#update_chapter”, :as => :update_chapter

get ‘:book_id/new_chapter’, to: “contents#new_chapter”, :as => :new_chapter

post ‘create_chapter’, to: “contents#create_chapter”, :as => :create_chapter

delete ‘:id/destroy_chapter’, to: “contents#destroy_chapter”, :as => :destroy_chapter

get ‘index_sections/:chapter_id’, to: “contents#index_sections”, :as => :index_sections

get ‘:id/edit_section’, to: “contents#edit_section”, :as => :edit_section

patch ‘:id/update_section’, to: “contents#update_section”, :as => :update_section

get ‘:chapter_id/new_section’, to: “contents#new_section”, :as => :new_section

post ‘create_section’, to: “contents#create_section”, :as => :create_section

delete ‘:id/destroy_section’, to: “contents#destroy_section”, :as => :destroy_section

get ‘index_subsections/:sectio_d’, to: “contents#index_subsections”, :as => :index_subsections

get ‘:id/edit_subsection’, to: “contents#edit_subsection”, :as => :edit_subsection

patch ‘:id/update_subsection’, to: “contents#update_subsection”, :as => :update_subsection

get ‘:section_id/new_subsection’, to: “contents#new_subsection”, :as => :new_subsection

post ‘create_subsection’, to: “contents#create_subsection”, :as => :create_subsection

delete ‘:id/destroy_subsection’, to: “contents#destroy_subsection”, :as => :destroy_subsection

get 'index_minisections/:subscion_id’to: “contents#index_minisections”, :as => :index_minisections

get ‘:id/edit_minisection’, to: “contents#edit_minisection”, :as => :edit_minisection

patch ‘:id/update_minisection’, to: “contents#update_minisection”, :as => :update_minisection

get ‘:subsection_id/new_minisection’,to: “contents#new_minisection”, :as => :new_minisection

post ‘create_minisection’, to: “contents#create_minisection”, :as => :create_minisection

delete ‘:id/destroy_minisection’, to: “contents#destroy_minisection”, :as => :destroy_minisection

end

get ‘chapters/index_chapters/:book_id’, to: ‘contents#index_chapters’,:as => :index_chapters

Hope this help you.