2010-09-28 29 views
8

me gusta url estilo polimórfica mucho, por lo que puede escribircarriles url polimórfica params

link_to 'New taste', [:new, :taste] 

en lugar de

link_to 'New taste', new_taste_path 

Pero es posible añadir parámetros de consulta a primera sin utilizar polymorphic_url/polymorphic_path?

+0

Por lo que yo sé no puedes – vise

+0

¿Quiere decir que 'link_to 'New taste', [: new,: taste],: a_param => 'param'' no es posible? – Yannis

+0

@Yannis: no, esto agrega un atributo a la etiqueta de anclaje – tig

Respuesta

3

Sí - se puede pasar de esta manera:

link_to 'New taste', [[:new, :taste], :a_param => 'param'] 
+1

Parece que está disponible solo en rieles ~> 4.1 – tig

8

No. Cuando se pasa una matriz a estos métodos (link_to, redirect_to, etc.) el argumento url se pasa directamente a url_for, que a su vez llama a polymorphic_path con un solo argumento. Como dijiste polymorphic_path, permite pasar parámetros como segundo argumento, pero no se pueden pasar como en el primer argumento.

el fin de pasar parametros y utilizar el enrutamiento polimórfica usted tiene que utilizar polymorphic_path/polymorphic_url así:

link_to 'New taste', polymorphic_path([:new, :taste], :spiciness => :on_fire) 
Cuestiones relacionadas