I need to add the following member methods to a number of resources, is there a way to DRY this up?
member do
get :votes
post :up_vote
post :down_vote
end
In my routes.rb
resources :news do
resources :comments do
member do
get :votes
post :up_vote
post :down_vote
end
end
end
resources :downloads do
resources :whatever do
member do
get :votes
post :up_vote
post :down_vote
end
end
end
EDIT
I've actually moved it out into a module like so:
module Votable
module RoutingMethods
def votable_resources
member do
get "up_votes"
get "down_votes"
post "up_vote"
post "down_vote"
end
end
end # RoutingMethods
end
Now, my routes.rb looks like this:
require 'votable'
include Votable::RoutingMethods
MyApp::Application.routes.draw do
namespace :main, :path => "/" do
resources :users do
resources :comments do
votable_resources
end
end
end
end
See my inline comments, but I want the named route to look like: main_users_comments_up_votes