no route found to match "/search" with {:method=>:get}

Hi,

I am a bit new to the whole RoR thing and have faced small problem, but was not able to fine related answer to my specific condition. I am writing an application called site which I want to be the default root application. I did the required configuration in routes.rb file.

Problem is, on the main page, I have a GET form that does not wrap object model, and has an id. I tried manual HTML and it didn't work when I am visiting the site from http://localhost:3000 because the action 'search' will point to non-existing action on that level, yielding error:

no route found to match "/search" with {:method=>:get}

if I go to http://localhost:300/site/index and do the search it works fine. I tried the form_tag and it also didn't help. Any idea how I can overcome this issue?

hm, if i am understand you need implement routes,

in config/routes.rb, something in middle do: map.search "/search", :controller => "site", :action => "index"

then /search path will be available, for anything.

also you will be able to make restful url, like: link_to "Seach on site", search_url

Jamal: Thanks. Your solution worked.

Alexey: Your solution worked as well. Thanks.

I think I will go with the name mapping seems better on the long run.