slimで調べるとphpや他の言語も出てきてしまうのですが、hamlと同じくHTMLテンプレートエンジンのslimの使い方です。
slimでforやeachなど繰り返しの項目を作成したい場合、書き方がよくわからなかったのでメモです。

【目次】
  1. 配列やhash

配列やhash

例としてメニューを作って見ます。

- menus = [{label:'メニュー1',:href=>'menu1.html','class'=>'menu1'},{label:'メニュー2',:href=>'menu2.html','class'=>'menu2'}]
- menus.each do |menu|
  li class="#{menu['class']}": a href="#{menu[:href]}" #{menu[:label]}
menu.slim
ソースコード装飾ならGoogle code prettify

書き方が3種類あります。

  1. {key:’value’} = #{変数[:key]}
  2. {:key => ‘value’} = #{変数[:key]}
  3. {‘key’=> ‘value’} = #{変数[‘key’]}

jsに慣れていると{}がオブジェクトに思えるので変数.keyと記述しがちですが、hashなので[]で取得します。
key:valueが一番簡単で、’key’=> ‘value’が展開するときはわかりやすいです。