2012-08-31 12 views
8

Eventuali duplicati:
Rails: How do I pass custom params to a controller method?passaggio dei parametri al controllore azione attraverso percorsi

Mi chiedo se è possibile passare parametri al controllore azione attraverso percorsi. Ho un unico metodo di azione generico che voglio chiamare per vari percorsi. No, non posso usare caratteri jolly nel mio percorso.

match '/about' => 'pages#show' 
match '/terms' => 'pages#show' 
match '/privacy' => 'pages#show' 

Sto cercando qualcosa di simile:

match '/about' => 'pages#show', :path => "about" 
match '/terms' => 'pages#show', :path => "terms" 
match '/privacy' => 'pages#show', :path => "privacy" 

Grazie.

+0

controllare questa domanda http://stackoverflow.com/questions/12150254/rails -how-do-i-pass-custom-params-to-a-a-controller-method/12150277 # 12150277 – 8vius

+0

Questo non è affatto un duplicato di quell'altra domanda. – gregates

+0

Non duplicato affatto. – hlcs

risposta

14

Prova

match '/about' => 'pages#show', :defaults => { :id => 'about' } 
match '/terms' => 'pages#show', :defaults => { :id => 'terms' } 
match '/privacy' => 'pages#show', :defaults => { :id => 'privacy' } 

se non è possibile per qualche motivo basta seguire la convenzione standard di

match '/:id' => 'pages#show' 
+1

Funziona anche con gli ambiti: 'scope: user, come: 'user', default: {scope:: user} do'. – hlcs

Problemi correlati