Ruby on RailsのテンプレートエンジンをSlimにする方法



Ruby on Railsでデフォルトのテンプレートエンジンである「ERB」からを「SLIM」に変更する方法を紹介します。

また、すでにERBで書かれてるファイルをSLIMに変換する方法も合わせて紹介します。

gemをインストールして、簡単な設定をするだけなので、ぜひ参考にしてください。

Ruby on RailsのテンプレートエンジンをSLIMにする方法

Ruby on Railsでは、デフォルトのテンプレートエンジンはERBになっています。

SLIMで読み込まれるように変更するためには、gemをインストールするだけで変えることができます。

「SLIM-rails」のgemをインストールする

ERBからSLIMにするためにgemをインストールします。

アプリのGemfileに下のコードを書き込みます。

変更を保存した後に、ターミナルでインストールします。

たったこれだけで、拡張子がSLIMのものを読み込んでくれるようになります。

また、このgemをインストールした後は$ rails gのコマンドを実行するたびに、viewテンプレートはERBではなく、SLIMで作成されるようになります。

ERBのコードをSLIMのコードに変換する方法

上の設定で、SLIMのファイルが読み込まれるようになったのですが、すでにERBで書いているファイルがあると不具合が起こります。

それは、同じファイルがある場合です。
同じ名前のファイルがERBとSLIMである場合は、ERBが読み込まれてしまいます。

そのため、ERBのファイルをERBに変換し、ERBのファイルは全て削除するようにしましょう。

「html2slim」というgemをインストールする

html2SLIMというgemを利用します。

Gemfileに以下のように書き込みます。

変更を保存し、ターミナルでインストールします。

html2SLIMを使って変換する

インストールした後に簡単な設定をする必要があります。

フォルダごとERBからSLIMに変換する

上記のコードをターミナルに打ち込んで実行すると、app/views/ディレクトリ以下の全てのERBのファイルがSLIMに書き換わります。

フォルダごとERBからSLIMに変換し、ERBファイルを削除する

SLIMに書き換えても、上のコマンドだとERBのファイルが残っています。
ERBを削除するためには、 -dオプションを追加すればOKです。

こうすることにより、ERBからSLIMに変換された後、もともとあったERBのファイルは削除されます。

まとめ:gemを使ってERBからSLIMに簡単に変換できる

Ruby on Railsで、ERBからSLIMファイルが読み込まれる方法、そして、ERBからSLIMに変換する方法を解説しました。

gemを使えば簡単に変更できるので試してみてください。

最後になりますが、エディターでSlim用の言語ファイルを入れておけば、見やすくなります。
Atomは「language-slim」、VSCodeは「Slim」というパッケージをインストールしてください。

SLIMでのコードの書き方【Ruby on Rails】

2019年2月16日

Ruby on Railsの学習にオススメな本4選

2019年2月20日
この記事のタイトルとURLをコピーする
Amazonでお得に買い物
Amazonで海外に行く前に必要なモノを購入されると思いますが、Amazonのギフト券のキャンペーンを利用するとお得です。

このキャンペーンを利用すれば、普通に購入するのに比べて、

  • Amazonギフト券のチャージ金額に合わせてポイントが貯まる(最大2.5%)
  • 5,000円以上のチャージで1,000ポイントがもらえる(初回購入の人のみ)

特に、Amazonプライム会員であれば、ゲットできるポイントの利率が一般会員よりも高くなってお得です。

ぜひこの機会に、キャンペーンを利用して、欲しい物をお得に購入してみてください。

※クレジットカード・電子マネーでのチャージはキャンペーン対象外なので注意