はじめに
最近、railsの勉強をしています。少し前までは、erb
を使っていたのですが,
haml
に最近切り替えたので、自分なりにまとめてみたいと思います。
文章ところどころ、おかしいところあるかもしれませんがご了承ください。
hamlとは
HTML abstraction markup language
HTML/XHTMLを生成するためのマークアップ言語
HTMLを効率的に生成するための記法。
hamlの書き方
- HTMLのタグを使いたい場合
下記は、pタグを使って、hogeという内容を出力
%p hoge
- クラス,IDを定義したい場合
<div class="hoge">hoge</div>
<div id="huga">huga</div>
hamlに変換します。
.hoge hoge
# huga huga
- Rubyの文法、変数を使いたい場合
- hoge = "fuga"
- @tasks.each do |task|
%tr
%td= link_to task.name, task
%td= task.created_at
=
を使うことによって、=
以降の内容が=
前のタグの内容として、出力されます
私が思うhamlの魅力
-
HTMLタグを省略できる
hamlだとHTMLの閉じタグを省略したり、div
などを省略することができるので、閉じ忘れをする心配などがないので、私的にはとてもありがたいです -
erbよりスッキリして見える
個人的な考えなのですが、erbよりかなりタグが少ないので、スッキリしてコードが読みやすいです。 -
Rubyの文法が簡単に呼び出せる。
for文などの繰り返し文書いたりする際、簡単に書くことができます。
導入方法
-
Gemfile
に下記を書く
Gemfile
gem 'haml-rails'
-
bundle install
します -
rails haml:erb2haml
をターミナルで実行して、erb
をhaml
に置き換える
最後に
私は、haml
とても書きやすいと感じます。
よかったら、皆さんもhaml
入門してみてください!!