See <http://dev.rubyonrails.org/ticket/6426>.
One solution is to add module ActionController::Routing SEPARATORS = %w( / ; , ? ) end in your controller. I'm not sure if this still works under recent versions of Rails. Lee On Dec 9, 3:42 pm, Pete Hodgson <[EMAIL PROTECTED]> wrote: > Hi Folks, > > I'm trying to set up a RESTful route in my rails app and have hit a > snag. My application allows various different types of querying centered > around a search phrase, and I decided it'd be nice to that in my RESTful > API by exposing resources like: > > http://www.myapp.com/api/keyword_research/SOME_SEARCH_PHRASE > for basic information about the phrase, and then > > http://www.myapp.com/api/keyword_research/SOME_SEARCH_PHRASE/popularity > for a specific query on that phrase (it's popularity in this case). > > Essentially I'm trying to represent the search space as a resource > space, with one resource for each possible phrase. > > I set up the following in my routes.rb, and it ALMOST works: > > map.resources( > :keyword_research, > :controller => 'api/v3/keyword_research' , > :member => {:index => :get, :popularity => :get } > ) > > I can then use something like the following to generate resource URLs: > keyword_research_url( 'some search phrase' ) > and > popularity_keyword_research_url( 'some search phrase' ) > > The only problem is when the search phrase contains a dot. That leads to > urls like: > > http://www.myapp.com/api/keyword_research/PHRASE.WITH.DOTS > andhttp://www.myapp.com/api/keyword_research/PHRASE.WITH.DOTS/popularity > > which confuses the routing system to no end. This results in various > errors such as template missing, no route found, etc etc. Essentially I > think the routing system is interpretting the dotted id as specifying a > representation type, or something similar. > > I thought a nice solution would be to encode the search_phrase portion > of these resource urls when I generate them, leading to urls > like:http://www.myapp.com/api/keyword_research/PHRASE%2eWITH%2eDOTS > andhttp://www.myapp.com/api/keyword_research/PHRASE%2eWITH%2eDOTS/popula... > > I've tested urls encoded like this and they appear to play nicely with > the routing I have, and are within the specs AFAIK. I'd be happy with > this, but the problem is that I don't know how to generate urls like > this using the url helper methods. > > Anyone have any ideas? I'd be open to either a clean way to support > un-encoded dots, or some advice on how to get ids with the dots encoded > out of the url helpers. Or some other elegant solution, of course! > > Thanks, > Pete > -- > Posted viahttp://www.ruby-forum.com/. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---