KEIS BLOGは株式会社ケイズ・ソフトウェアが運営しています。

KEIS BLOG

Ruby on rails -slim-


Anai001

ネットでよく見るこの画像、調べてみたら写真素材を無料で配布しているストックフォトサービスのものでした。
■URL
https://www.pakutaso.com/

様々な写真素材があって面白いです。

さて今回は、「Slim」でコードをスリムにしたいと思います。

Railsで開発を行う場合、標準ではViewのテンプレートエンジンに「ERB(.erb)」が使われていますが、「Slim(.slim)」を使用することでコーディングの時間と量を減らすことができるようになります。

「Slim」と同じような「Haml」というテンプレートもありますが、「Slim」ほうが高速です。

「Slim」の特徴として

・タブによりHTMLのタグ構造を表す
・HTMLエスケープをするので安全
・ERBに比べてスピードが速い

また、コーディングのルールとして

・<、>、<%、%>などのタグを削除する
・閉じタグは全て削除する。
・each、ifなどのロジック部分の先頭に-を記載する。(endは必要ない)
・<%= ... >は=にする。yieldとrenderのときは、==にする。
・class属性やid属性は、p.fieldsやp#contentsなどにする。タグがdivのときはdivを省略し#contentと記載する。
・コメントは、/ このコメントはHTMLに変換後に表示されないか/! このコメントはHTMLに変換後にコメントになるで記載する。

※詳しくは公式ドキュメントを参照
http://slim-lang.com/

既にerbで開発している場合でも、「html2slim」を使って変換することができます。

■GitHub
https://github.com/slim-template/html2slim

html2slimをインストールすると、「html2slim」と「erb2slim」のコマンドが使えるようになるのでerbを変換する場合は、

erb2slim hogehoge.html.erb

でslimに変換できます。

これからは「Slim」を使っていこうと思ったのですが、「Slim」よりも高速な「Hamlit」がリリースされたので、今度は「Hamlit」について調べてみたいと思います。

【関連記事】
3分で構築するRuby on Rails開発環境
続・3分で構築するRuby on Rails開発環境~MySQL設定編~
フラットデザインとレスポンシブデザイン
「Cloudera World Tokyo 2014」に行ってきました
Code Avengers(コードアベンジャーズ)
paizaでスキルチェック ~オンラインハッカソンに挑戦~
そしてスーパープログラマーへ
Hackmeに挑戦!
Railsで作るAPI
Ruby on Rails -turnout-
Ruby on Rails -migration-
Windows 10にアップグレードしてみました
Windows 神モード