Итак, вы в основном хотите получить все конечные узлы, верно?
Вы можете сделать это, перебирая всех потомков и отклоняя узлы с дочерними элементами. Возможно, это не самое эффективное решение, но оно будет работать.
- folder.descendants.reject(&:has_children?).each do |sub|
div.col
div.form-group
= sub.name
Кстати, использование метода indirects
неправильно для деревьев с level = 2, потому что в этом случае вы ' буду отвергать прямых детей root, которые в данном случае тоже являются листами.