easy_routing

A simple plugin to make Rails 3 routing a bit more concise.

Goals

The new Rails 3 routing mechanism brings a host of new features, updates, and capabilities. I’m finding some pieces to be a bit repetitive though, and decided it’d be interesting to put together a plugin with some time and space saving methods.

Examples

Before:

match ‘search(/:s)’ => ‘search#search’, :as => :search

match ‘saved_search/:id(.:format)’ => ‘search#saved_search’, :as => :saved_search

match ‘tag/:tag’ => ‘search#tag’, :as => :tag

match ‘privacy’ => ‘home#privacy’, :as => :privacy

match ‘about’ => ‘home#about’, :as => :about

match ‘faq’ => ‘home#faq’, :as => :faq

match ‘press’ => ‘home#press’, :as => :press

After:

actions_for :search => %wsaved_search/:id(.:format) tag/:tag

actions_for :home => %w(privacy about faq press)

Note on Patches/Pull Requests

  • Fork the project.

  • Make your feature addition or bug fix.

  • Add tests for it. This is important so I don’t break it in a future version unintentionally.

  • Commit, do not mess with rakefile, version, or history. (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)

  • Send me a pull request. Bonus points for topic branches.

Copyright © 2010 Jack Dempsey. See LICENSE for details.