Saturday, April 19, 2008

Ruby on Rails: Избавляемся от HTML

Это возможно если использовать HAML вместо ERb
небольшой пример который должен показать насколько прагматично его использовать:
.center.wide
  #profile
    %b{:style=>"margin-left:10px"}=user.name
    %p
      =user.description
      =link_to_remote("save", user_path(user), :submit=>:profile)
      #tags
        =user.tags.map(&:name).join(",")
        =link_to_function("close") do |page|
          - page[:tags].hide
Человек немного знакомый с Web технологиями, разумеется, поймет, что значит это пример.


Зачем это нужно?
1. Не повторяем себя DRY с отрытием/закрытием тегов
2. Код уменьшается процентов на 30
3. Единица площади экрана несет больше информации (проще держать все на виду)
4. Код будет всегда хорошо отформатирован тк вложенность тэгов обеспечивается табуляциями
5. Естественная интеграция с Ruby и RJS
6. Ускоряется набор текста