template rails programming language framework example ruby-on-rails ruby haml templating slim-lang

ruby on rails - rails - La mejor forma de manejar atributos de datos en Slim



slim programming language (3)

Estaba evaluando Slim como reemplazo de HAML en un proyecto personal, y no parece manejar los atributos de datos HTML5 con la misma gracia que HAML. Esperaba que alguien también se haya topado con esto, o que haya conocido una opción / sintaxis que aún no he encontrado en sus documentos.

HAML le permite definir atributos de datos HTML 5 simplemente utilizando hashes anidados como los siguientes:

%a{data: {key1: ''val'', key2: ''val''}}

Resultando en

<a data-key1=''val'' data-key2=''val''></a>


Hay muchas formas en Slim

  1. Como Hash

    Atributos que se dividirán en guiones si se da una Hash (por ejemplo, data = {a: 1, b: 2} se representará como datos-a = "1" data-b = "2")

  2. Úselo directamente como se menciona "mu es demasiado corto", bastante intuitivo.

    a data-title="help" data-content="foo"

  3. Usa el código de Ruby. A menudo hago esto y raramente arriba.

    = link_to ''foo'', bar_path, data: {a: ''a'', b: ''b''}


Prefiero este tipo para arreglar ...

@products.each do |product| .module data-id=product.id

Me está funcionando


Use el operador splat :

h1#section-title*{''data-url''=>''test'', ''data-id''=>''test''} = @project.name