Optional route parameters for resource routes?


#1

I have the following URL:

/images/1.jpg?size=500

Where images is a resource setup via map.resources :images. I want to
take advantage of caching, and caching ignores parameters. So I need to
make size optional in the url:

/images/1/500.jpg

Something like that where the size can be built into the URL. I looked
through all of the map.resources documentation and couldn’t find
anything to do this. Any ideas how I can accomplish this?

Thanks for your help.


#2

map.resources :images, :member => [:500, :1000]

will map to 2 methods in your controller, but I think you might have
problems giving ruby method names that start with numbers.

you probably just have to make a specially entry in your routes file,
something like this:

map.cached_image ‘/images/:id/:size’, :controller => “images”, :action
=> “show”

in your show method just check for the presence of :show in the params
and respond appropriately.

On Dec 9, 3:23 pm, Ben J. removed_email_address@domain.invalid