High Speed Rails

by winson, about 1 year ago.

Rails雖然可以把HTML, Ruby分開,其實寫法也是跟PHP, JSP類似,是把程式語法嵌在HTML語法之中,而Rails跟其他平台不一樣的地方就是整個系統的檔案架構是規定好的,程式員只要比照辦理便是。

採用Rails是可以很快完成物件或程式開發沒錯,不過一但進行前端的網頁設計,就發覺好像陷在蜘蛛網裡頭一樣,整包黏在一起。

看看這一段RHTML代碼:
# This is a HTML version
<% form_tag do %>
 <p><label for="username">Name:</label>
 <%= text_field_tag :name, :size => 20 %></p>
 <p><label for="password">Password:</label>
 <%= password_field_tag :password, :size => 20 %></p>
 <%= submit_tag "Login" %>
<% end %>
要是可以變成這樣:
# This is a HAML version
- form_tag do
%p
%label{:for => "username"} Name:
= text_field_tag "name" 
%p
%label{:for => "password"} Password:
= password_field_tag "password" 
%p
= submit_tag "Login" 
- end
拿掉累贅的”<”, ”>”,簡化HTML的Tag,看起來Rails似乎可以再加速,成為真正的高速鐵路!!

這當然不是什麼新一代的HTML,這是HAML,背後只是透過樣板引擎把簡化過的語法翻譯成HTML,但對在網頁上著墨的人來說,可以省卻很多功。

HAML可以用外掛的方式加入Rails,先切換到專案目錄後,輸入以下的指令安裝起來:

script/plugin install http://svn.hamptoncatlin.com/haml/tags/stable
之後,只要在Rails底下新增.haml的檔案,就可以使用HAML語法了,這跟平常使用View時,採用.rhtml去寫Embedded Ruby是一樣的方式。

這樣一來有個好處,網頁設計師原本應該一起參加黏呼呼的RHTML網頁設計,這下子可以直接找出#, .開頭的Tag而完全專注於CSS的設計就好。


  • Posted in Plugins, on Thursday, April 12, 2007, at 08:31 PM.