2012-01-22 14 views

risposta

17
%div{class:job.done && "highlight"} 

Se si imposta un attributo a false o nil, Haml si omette l'attributo del tutto.

-1
%div{job.done ? {:class => "highlight"} : {}} 

%div{:class => job.done ? "highlight" : ""} 
+0

Quest'ultimo crea effettivamente ''

, una classe vuota. Questo è funzionalmente lo stesso, ma non lo stesso risultato richiesto dall'OP. – Phrogz

+0

@Phrogz Giusto, ma nella maggior parte dei casi va bene. Il tuo modo è probabilmente migliore, non lo sapevo. –

17
%div{:class => ('hightlight' if job.done)} 

credo sarebbe anche fare il trucco, e non crea class = '' se job.done == false, guarda anche più come il codice iniziale

+0

Mi sembra più pulito, grazie! –