はじめに
最近、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に下記を書く
gem 'haml-rails'
-
bundle installします -
rails haml:erb2hamlをターミナルで実行して、erbをhamlに置き換える
最後に
私は、hamlとても書きやすいと感じます。
よかったら、皆さんもhaml入門してみてください!!