This repository is private.
All pages are served over SSL and all pushing and pulling is done over SSH.
No one may fork, clone, or view it unless they are added as a member.
Every repository with this icon (
) is private.
Every repository with this icon (
This repository is public.
Anyone may fork, clone, or view it.
Every repository with this icon (
) is public.
Every repository with this icon (
Ryan Bates (author)
Thu Apr 03 11:58:15 -0700 2008
| name | age | message | |
|---|---|---|---|
| |
.gitignore | Thu Apr 03 10:09:47 -0700 2008 | |
| |
LICENSE | Thu Apr 03 10:09:47 -0700 2008 | |
| |
README | Thu Apr 03 11:58:15 -0700 2008 | |
| |
Rakefile | Thu Apr 03 10:09:47 -0700 2008 | |
| |
init.rb | Thu Apr 03 10:09:47 -0700 2008 | |
| |
install.rb | Thu Apr 03 10:09:47 -0700 2008 | |
| |
lib/ | Thu Apr 03 11:55:25 -0700 2008 | |
| |
spec/ | Thu Apr 03 11:55:25 -0700 2008 | |
| |
tasks/ | Thu Apr 03 10:09:47 -0700 2008 | |
| |
uninstall.rb | Thu Apr 03 10:09:47 -0700 2008 |
README
Static Actions ============== This plugin will allow you to quickly create non-RESTful named routes using "map.static_actions". This way you can truly get rid of that generic ":controller/:action" route. Installation ------------ If you are running edge rails you can install the plugin straight from the repository: script/plugin install git://github.com/ryanb/static_actions.git Otherwise you can install it with this command: git clone --depth=1 git://github.com/ryanb/static_actions.git vendor/plugins/static_actions Instructions ------------ Let's say you have a controller called "about" which has "index", "privacy", and "license" actions. This is a non-RESTful controller and usually requires the generic ":controller/:action" route. Instead we will use this plugin's static_actions method to generate named routes! map.static_actions :about, [:index, :privacy, :license] That is the same as doing this. map.about_index 'about', :controller => 'about', :action => 'index' map.about_privacy 'about/privacy', :controller => 'about', :action => 'privacy' map.about_license 'about/license', :controller => 'about', :action => 'license' It also includes a with_format named route for each action. map.about_index_with_format 'about.:format', :controller => 'about', :action => 'index' map.about_privacy_with_format 'about/privacy.:format', :controller => 'about', :action => 'privacy' map.about_license_with_format 'about/license.:format', :controller => 'about', :action => 'license' Now you have 6 named routes you can use in your view. <%= link_to "Privacy", about_privacy_path %> <%= link_to "License PDF", about_license_with_format_path(:pdf) %> If you just have a single action, you can use the singular static_action method which doesn't take an array. map.static_action :about, :privacy If you don't want the controller name to be in the named route or path, you can prefix the method with "root_". map.root_static_actions :about, [:index, :privacy, :license] This will generate the following routes. map.root :controller => 'about' map.privacy 'privacy', :controller => 'about', :action => 'privacy' map.license 'license', :controller => 'about', :action => 'license' map.privacy_with_format 'privacy.:format', :controller => 'about', :action => 'privacy' map.license_with_format 'license.:format', :controller => 'about', :action => 'license' Happy routing. --- Copyright (c) 2008 Ryan Bates, released under the MIT license







