From 6a116bd9091fc68dc26317b398ebcbdfe8c34155 Mon Sep 17 00:00:00 2001 From: Brandon Weaver Date: Wed, 14 Dec 2016 17:17:44 -0800 Subject: Add note on defaults block option When I was looking for how to default the entire routes file to JSON I could only find the postfix option. It was mentioned on IRC that you could do this with a block as well and I had not found it in the documentation. --- guides/source/routing.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/guides/source/routing.md b/guides/source/routing.md index 937e313663..86492a9332 100644 --- a/guides/source/routing.md +++ b/guides/source/routing.md @@ -603,6 +603,14 @@ get 'photos/:id', to: 'photos#show', defaults: { format: 'jpg' } Rails would match `photos/12` to the `show` action of `PhotosController`, and set `params[:format]` to `"jpg"`. +You can also use `defaults` in a block format to define the defaults for multiple items: + +```ruby +defaults format: :json do + resources :photos +end +``` + NOTE: You cannot override defaults via query parameters - this is for security reasons. The only defaults that can be overridden are dynamic segments via substitution in the URL path. ### Naming Routes -- cgit v1.2.3