mabots' blog

知のレバレッジを最大化せよ (旧はてなダイアリーから移転しました。)

Slim で条件によって動的にクラスを付与する

例えば、なにかの表で偶数列だったら even クラスをつけるといった場合の処理 ( 単純に css でも対応できますが ) の仕方をいつも忘れてしまうのでメモ。

  • シンプルに cycle を使う
- data.each do |i|
  .item class=(cycle('odd', 'even')) 
  • 毎回評価する (例えば なにかの helper の実行結果によって挙動を変えたい時など)
- data.each do |i|
  .item class=('even' if i / 2 == 0)