2012-01-04 20 views

Respuesta

198

Sólo tiene que pasar en ... Carriles tiene un hash de :data

= link_to body, url, :data => { :foo => 'bar', :this => 'that' } 

Una Gotcha por defecto - debe rodear los símbolos con comillas si incluyen un guion:

:data => { :'foo-bar' => 'that' } 

Actualización: En los carriles 4, guiones bajos se convierten automáticamente en guiones, así que usted puede hacer esto:

:data => { :foo_bar => 'that' } 

Alternativamente, usted puede escribir directamente:

= link_to body, url, :'data-foo' => 'bar', :'data-this' => 'that' 

actualización 2: Como se señala en los comentarios, Ruby 1.9+ permite esta sintaxis, que algunos creen que es más clara:

{ data: { foo: "bar" } } 
+0

Funciona perfectamente, ¿puedo preguntar => dónde se dio cuenta de eso: sintaxis de datos? – eveevans

+1

Creo que fue en un [Railscast] (http://railscasts.com)? No estoy seguro. Lo he estado usando por un tiempo. Está definido en la fuente de Rails si quieres hurgar. – sethvargo

+6

Me gustaría señalar aquí para futuros visitantes que con la nueva sintaxis de Ruby 1.9, solo funciona el primer método. Entonces, puede hacer esto: data: {type: 'remote'} pero no esto: 'data-type': 'remote' – Ashitaka

3

Añadir un atributo data- de la siguiente manera:

link_to "Hello", hello_path, :"data-attribute" => "yeah!" 
Cuestiones relacionadas