Routing every request to same action

Hi,

I have some problem, I want to route every request from URL to an action
in my one controller.
Like if I enter localhost:3000/rac .Here it will take the ‘rac’ as a
controller name and then route it to the ‘index’ action of the ‘rac’
controller. But what I want is that it should redirect towards
:controller=>‘companies’ :action=>‘index’ , doesnt matter that ‘rac’
controller exisits or not, It should just redirect to my desired
controller/action.
I tried this in my routes.rb
map.connect ‘parts/:number’,:controller=>‘companies’ ,
:action=>‘index’
But its not working.
Please help me to overcome this problem,
Thanks in advance,
Regards,
Umair

Please let me know if any one know how to do this

On Mon, 2009-03-30 at 23:08 +0200, Umair Ejaz wrote:

Please let me know if any one know how to do this

I’m not sure I understand exactly what you want to do but if you really
want every request to get routed to the same action, you can use a
before_filter.

In application.rb:

def route_all_to_somewhere
redirect_to :controller => ‘desired_controller’, :action =>
‘desired_action’
end

and either at the beginning of application.rb or in each of your
controller files:

before_filter :route_all_to_somewhere

HTH,
Bill

Thanks dear this will work fine if I write before_filter
:route_all_to_somewhere
in start of my all controllers but if the controller doesnt exist, means
he write locahost:3000/rac and there is not ‘rac’ controller then how
can I redirect this request towards my desired action…It willl simply
give the routing error that “No route matches “/rac” with”. What I want
is that it should nt gimme this error even if i write the name of the
controller in URL which doesnt exists, It should always redirect to my
desiredt action

If the requirement is to direct every incoming request for a particular
action in a controller then can just have

map.connect ‘*path’, :controller=>“your_controller”,
:action=>“your_action”

in the routes.rb file. This will redirect every request to ‘your_action’
in ‘your_controller’.

Regards,
Madhusudhan

Thank you soooo mcuh!!!thats what i was looking for!
thanks again