Ruby & Rails > 第27回 続・altERBで楽々Railsコーディング! ~Slimの紹介~

※この記事は読者によって投稿されたユーザー投稿です:
  • 編集部の見解や意向と異なる内容の場合があります
  • 編集部は内容について正確性を保証できません
  • 画像が表示されない場合、編集部では対応できません
  • 内容の追加・修正も編集部では対応できません

CTC教育サービスはコラム「Ruby & Rails > 第27回 続・altERBで楽々Railsコーディング! ~Slimの紹介~ 」を公開しました。

こんにちは、藺藤です。

前回のコラムではHTMLテンプレートエンジンの「Haml」を紹介しました。 HamlをERBの
代わりに使うと簡潔な記述でHTMLを作成できます。(="altERB")

今回はその続きとして、もう一つのテンプレートエンジンである「Slim」を紹介します。(*1) (*2) Slimを使うことで、HTMLの記述が簡潔になります。 SlimはHTMLに特化しているため、Ruby標準のERBを使うのに比べ、格段にコーディング量が少なくなります。 また、SlimはRuby製ですのでRubyコードとの親和性も高いです。

初めにSlimを簡単に紹介します。 次にSlimの導入方法を説明します。 その後、実際に動かしながらSlimの文法を説明してゆきます。 最後にRailsでの利用方法や、ちょっぴり便利な機能に触れたいと思います。

今回は以下の環境で動作確認しています。

•CentOS 6.5
•Ruby 2.1.4 x64
•Slim 3.0.6
•Rails 4.2.6
•Redcarpet 3.3.4
Slimとは
SlimのREADMEから、Slimがどのようなものなのかを端的に表す次の文章を引用します。(*3)

"Slim は 不可解にならないように view の構文を本質的な部品まで減らすことを目指したテンプレート言語です。標準的な HTML テンプレートからどれだけのものが削除できるか確かめるところから始まりました。(<, >, 閉じタグなど) 多くの人が Slim に興味を持ったことで, 機能性は発展し, 柔軟な構文をもたらしました。"

「Slim」という名が示す通り、本質的ではない部分をHTMLからカットし、すっきりさせた言語ということのようです。

どれくらい"スリム"になるのか、実際にSlimコードの例を示します。

[level.html.slim]
select#level
  option[value="1"]  Info
  option[value="2"]  Warn
  option[value="3"]  Errorこれは次のようなHTMLに変換されます。

[level.html]
<select id="level">
  <option  value="1">
    Info
  </option>
  <option  value="2">
    Warn
  </option>
  <option  value="3">
    Error
  </option>
</select>この例では、記述したSlimは88文字ですが、変換後のHTMLは157文字となりました。 Slimを使うことで記述量を半分近くに減らせたことになります。 生成されたHTMLとSlimのソースコードを見比べてください。 HTMLに比べ、Slimの方はずいぶんとすっきりしていますね。

この続きは以下をご覧ください
http://www.school.ctc-g.co.jp/columns/masuidrive/masuidrive27.html

この記事が役に立ったらシェア!
メルマガの登録はこちら Web担当者に役立つ情報をサクッとゲット!

人気記事トップ10(過去7日間)

今日の用語

NDA
Non-Disclosure Agreementの略。一般には「秘密保持契約」と ...→用語集へ

インフォメーション

RSSフィード


Web担を応援して支えてくださっている企業さま [各サービス/製品の紹介はこちらから]