Wenn Sie nur einen Query String verwenden möchten, müssen Sie Ihre Route nicht angeben. Die Parameter Objekt wird alle übergebenen Parameter enthalten.
map.with_options :controller => 'test' do |m|
m.some_url 'someurl', :action => 'index'
end
Wenn Sie dann die Helper-Methode verwenden:
irgendein_url_pfad(:suche=> "someterm")
Erstellt den Wert der Abfragezeichenfolge für Sie.
Wenn Sie jedoch einen Parameter an einen Controller übergeben möchten, können Sie ihn in Ihrer Route binden:
map.connect ':controller/:action/:id/:search'
In Ihrem Controller können Sie dann darauf zugreifen:
params[:search]
In Ihrem Fall würde dies etwa so aussehen:
map.with_options :controller => 'test' do |m|
m.some_url 'someurl' :action => 'index'
end
Le site Rails-Routing-Leitfaden bietet einen hervorragenden Überblick über das Thema.