1. Ruby / Говнокод #6264

    −99

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    Было (плохо):
    
    <% @collection.each_with_index do |item, counter| -%>
      <%= "<div class='group'>" if ((counter)/items_in_block).to_i*items_in_block == (counter) %>
      <%= render :partial => 'item', :locals => { :item => item} %>
      <%= "</div>" if (counter > 0 and (((counter+1)/items_in_block).to_i*items_in_block == (counter+1)) or ((counter+1) == @collection.size)) %>
    <% end -%>
    
    Стало (чуть лучше ;):
    
    <% @collection.in_groups_of(items_in_block).each do |items| %>
      <div class="group">
        <% items.each do |item| %>
          <%= render :partial => 'item', :locals => { :item => item} %>
        <% end %>
      </div>
    <% end %>

    Группировка элементов в группы div'ов.

    Запостил: e2718, 07 Апреля 2011

    Комментарии (3) RSS

    • вот он настоящий российский руби программер!)) (в первом случае)
      Ответить
    • все равно пёрл лучше
      Ответить
    • <% items.each do |item| %>
      <%= render :partial => 'item', :locals => { :item => item} %>
      <% end %>

      можно заменить на

      <%= render @items %>

      Ваш К.O.
      Ответить

    Добавить комментарий