スポンサーリンク

2015年5月11日

Hamlを使ってみた。

タイトル:Hamlを使ってみた。

目的:Hamlの基本中の基本的な使い方とRubyコード埋め込みをテストする。

以下の環境にて実施
OS:Windows8.1
Ruby: v2.2.2 x64
Sinatra:v1.4.6
Sinatra-contrib:v1.4.2
haml:v4.0.6
ディレクトリ構造:
作業ディレクトリ(名称は何でもいい)
|-sinatraTest.rb
|-views(名称は左記の通りにディレクトリを作成)
    |-view.haml

前提条件

  • 上記に準ずる環境が構築されていること

以下の流れにて実施
  1. Hamlインストール
  2. Ruby側のソースコード作成
  3. Haml側のソースコード作成
  4. 説明&テスト
1.Hamlインストール

1.1
Rubyコマンドプロンプトを起動する。

1.2
以下のコマンドを実行する。
コマンド:gem install haml

1.3
インストール完了後、以下のコマンドでhamlを確認する。
コマンド:gem list または haml -v

1.Ruby側のソースコード作成
以下の通りにソースコード作成する。
以前、以下の記事を見て頂いた方はソースを改造&追加する形で行うと楽です。
erbを使ってみた。

ソース1
「erb Test!!」の記述直し忘れた。
再アップするのが面倒なのでこのままで...

2.Haml側のソースコード作成
以下の通りにソースコード作成する。

ソース2

3.説明&テスト

3.1
Rubyソース側
「require haml」、hamlを使うためにrequireしている。(なくても警告が出るが動作する。)
「haml :view」、でviews/view.hamlを指定。

Hamlソース側
「%タグ名(htmlタグ)」で、タグの記述ができる。(閉じのタグは不要)
「%タグ名= @埋め込み名」でRubyコードで定義した内容を埋め込める。
または「%タグ名 #{@埋め込み名}」でもよい。
「-#」でhaml内だけのコメントとして扱える。

3.2
Rubyコマンドプロンプトから
sinatraTest.rbのディレクトリへ移動し、以下のコマンドを実行する。
コマンド:ruby sinatraTest.rb

3.3
「localhost:4567」へアクセスし、Rubyソース側で記述してある文言が表示されれば問題ない。

3.4
この項目はやらなくてもいいです。

hamlで記述しているファイルから、html記述のファイルを出力する。

Rubyコマンドプロンプトを起動して、viewsのディレクトリから実行する。
以下のコマンドを実行する。

コマンド:haml -q -E UTF-8 view.haml view.html
「-q」は、区切りをダブルクォーテーションにしてくれる。(デフォルトだとシングルになるため)
「-E UTF-8」は、文字コード指定。(ないとエラーが発生する)

今回のファイルでは、@titleや@textの部分はRubyソースに記述されているので、
htmlで出力しても何も記述されていない。

適当な文言を入れて出力すれば出てくる。
試してみて下さい。

erbよりもhamlの方が記述が少なくなりますね。
今回は、基本中の基本レベルなので、大した実感は出ませんが、
これから大きくなっていけば実感できるかと...

他にも色々と記述できることがあるのですが、、、それはその内...

閑話休題...(まったく関係のない話題)
さて今回なのですが、
github(gist)にてソースコードをいつものごとくアップロードしました。
しかし、あまりにも同じ名前を続けていたため、スパム扱いされてしまいました。
エラー(?)、警告(?)のようなものが出ますので、ちょっと焦りました。

対応としては、サポートの方へメールを出せば、対応してくれます。
ちなみにメールは一応英語で書きました。
管理人はまったくもって英語が苦手なのですよ。
なのでネットで調べた結果、固い英語になってしまいましたね...

GitHub Stuffの対応して下さった方、
拙い英語にもかかわらず、迅速な対応ありがとうございます!

みなさんも私と同じことにならないよう、気を付けて下さい。

以上!!

以下、参考にさせて頂いたサイト
Haml - REFERENCE(本家のドキュメント)

人気の投稿