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. Ускоряется набор текста

3 comments:

Unknown said...

Вот только если появляется верстальщик, то всё уже не так красиво.

Alexander Petrov said...

С полной уверенностью могу сказать что верстальщика научить HAML не проблема. Даже есть пример из жизни: человек который знал только HTML+JavaScript смог быстро и полностью влиться в процесс разработки на HAML. При этом Rails до этого в глаза не видел. Так что для верстальщиков с ним проблем нет.

Anonymous said...

name    %p      =user