9

L'aggiunta di una barra finale nei collegamenti è abbastanza semplice con {: trailing_slash => true}, ma questo non tiene conto se un utente digita in un URL non barrato. C'è un modo per rafforzare le barre finali tramite i reindirizzamenti nel router?Applica la barra finale in Rails Routing

get "/:controller/:id" => redirect{|params| "/#{params[:controller]}/#{params[:id]}/" } 

Quanto sopra porta a un anello circolare.

Perché?

un collegamento relativo di "./subclass" sul

/parent/1 

è molto diverso da

/parent/1/ 

risposta

8

nel file di configurazione/application.rb, aggiungere

config.action_controller.default_url_options = { :trailing_slash => true } 

in la classe di applicazione

+2

Non penso di t il suo risolve il problema come chiesto. L'aggiunta di config.action_controller.default_url_options = {trailing_slash: true} garantisce solo che gli URL generati nelle guide contengano la barra finale. Se vuoi assicurarti che un utente abbia la barra finale nella loro url di richiesta se la digita manualmente, allora hai bisogno di qualcosa di simile: http://www.jumph4x.net/post/16395866916/ensuring-a-trailing-slash- in-rail-w-out –

+0

questo non funziona più -1 –

Problemi correlati