Skip to content

Commit

Permalink
Routing guide: move scope documentation down to where it is reference…
Browse files Browse the repository at this point in the history
…d more plainly
  • Loading branch information
radar committed Dec 31, 2010
1 parent eaf67ca commit 9aef64f
Showing 1 changed file with 12 additions and 10 deletions.
22 changes: 12 additions & 10 deletions railties/guides/source/routing.textile
Expand Up @@ -200,16 +200,6 @@ or, for a single case
resources :posts, :path => "/admin/posts"
</ruby>

You can even set named parameters for the paths:

<ruby>
scope ":username" do
resources :posts
end
</ruby>

This will provide you with URLs such as +/bob/posts/1+ and will allow you to reference the +username+ part of the path as +params[:username]+ in controllers, helpers and views.

In each of these cases, the named routes remain the same as if you did not use +scope+. In the last case, the following paths map to +PostsController+:

|_.HTTP Verb |_.Path |_.action |_.named helper |
Expand Down Expand Up @@ -724,8 +714,20 @@ end
resources :photos, :accounts
</ruby>

This will generate routes such as +admin_photos_path+ and +admin_accounts_path+.

NOTE: The +namespace+ scope will automatically add +:as+ as well as +:module+ and +:path+ prefixes.

You can prefix routes with a named parameter also:

<ruby>
scope ":username" do
resources :posts
end
</ruby>

This will provide you with URLs such as +/bob/posts/1+ and will allow you to reference the +username+ part of the path as +params[:username]+ in controllers, helpers and views.

h4. Restricting the Routes Created

By default, Rails creates routes for the seven default actions (index, show, new, create, edit, update, and destroy) for every RESTful route in your application. You can use the +:only+ and +:except+ options to fine-tune this behavior. The +:only+ option tells Rails to create only the specified routes:
Expand Down

0 comments on commit 9aef64f

Please sign in to comment.