PIYO - Tech & Life -

ActionViewのdom_id便利そう

ActionView Ruby Rails

RailsアプリでJSでデータを書き換えたあとでHTMLを更新するってことはよくあって、そのときはだいたいidを使うと思う。そしてidにはモデル名とモデルのidをそのまま使うことが多いはず。

<li id="item-192">...</li>

このようなidを書くとき今までは自分でベタ書きしてしまっていたが、ActionViewにはdom_idというヘルパーがあって、こちらを使えばもっとスマートに書けることがわかった。

こういう感じで書くと、

<li id="<%= dom_id(@item) %>">

こういうidを生成してくれるみたい。

<li id="item_123">

これを使うと似たような記述を減らすことができるのがいい。

同様にdom_classというメソッドもあって、こちらはシンプルにモデル名がクラスになるようなイメージだ。

<li class="<%= dom_class(@item) %>">

<li class="item">