ERB chủ yếu tốt nếu bạn có một nhà thiết kế web làm việc trên HTML thuần túy và không biết haml hay slim. Bằng cách này, anh ấy có thể viết HTML và bạn có thể nhúng logic ruby với các thẻ thích hợp.
Nếu bạn làm việc trên cả HTML và logic ruby, hoặc nhà thiết kế của bạn đã sẵn sàng học một cái gì đó mới (như HAML), tôi sẽ chọn HAML. Nó thân thiện với ruby hơn rất nhiều, giảm số lượng char nhiều và dễ đọc hơn ERB rất nhiều.
Ví dụ (lấy từ trang HAML chính thức ):
Trong ERB, chế độ xem của bạn sẽ giống như sau:
<div id="profile">
<div class="left column">
<div id="date"><%= print_date %></div>
<div id="address"><%= current_user.address %></div>
</div>
<div class="right column">
<div id="email"><%= current_user.email %></div>
<div id="bio"><%= current_user.bio %></div>
</div>
</div>
Khi ở trong HAML, nó sẽ trông như thế này:
#profile
.left.column
#date= print_date
#address= current_user.address
.right.column
#email= current_user.email
#bio= current_user.bio
Sạch sẽ hơn rất nhiều!
Đối với sự khác biệt giữa HAML và SLIM - tôi chưa bao giờ thực sự làm việc với SLIM nhưng tôi đoán đó là vấn đề sở thích - hãy xem xét cả hai cú pháp và quyết định cái nào trông đẹp hơn trong mắt bạn. Tôi không nghĩ rằng có một người chiến thắng nhất định giữa hai cái đó (HAML / SLIM).