2010-11-25 16 views

Respuesta

18

Se podría hacer algo similar a

match "urls/:url" => "urls#index", :constraints => {:url => /.*/} 

en Rails 2.3 que pueden funcionar en Rails 3 para que pueda coincidir el/la: url (aunque, no puedo probar esto por el momento.)

+0

probado este en rails3, funciona perfectamente, muy elegante solución – opsb

29

O puede utilizar la ruta Globbing:

match "urls/*url" => "urls#index" 

puede acceder a los valores contenidos en su sistema a través de params[:url]

Referencia: http://guides.rubyonrails.org/routing.html Búsqueda de "Ruta englobamiento"

+0

perfecto, gracias. –

+0

Muy bien, pero ¿y si esto está en un espacio de nombres? Si hago esto: 'match '/ services /: controller/* path /: id' =>"/services /: controller # show ",: via =>: get' y ve a'/services/foo/a/b' Obten 'constante no inicializada FooController'. '/ services/foo' y'/services/foo/a' funcionan, sin embargo. – panzi

+0

Esto funcionó mucho mejor para mí, ¡gracias! –

1
get ':klass/:id', constraints: { klass: /\D*/ } 
Cuestiones relacionadas