Было дело, надо в одном проекте выводить список файлов лежащих в определенной директории, с возможностью их скачать, как говориться в натуральную величину. Это был мой первый кусочек кода написанный на ruby, а поскольку rails для меня тогда еще были не доступны, их фишками я не пользовался. Встречайте, чистый ERB:
<%
vendors = Hash.new { |hash, key| hash[key] = Array.new }
Dir.open('public/files').each do |file|
# Заполняем хэш vendors файлами из директории, перебирая по очереди каждый из них
next if file[-4..-1] != '.pdf'
next if file =~ /^..?$/
file.gsub!('.pdf', '')
f = file.split(' ')
# Разбиваем имя файла, получая необходимые логические части Прозводитель и Модель.
# Заполняем хэш полученными значениями.
model = f[-1] # Пробельчик чик-чик
vendor = f[0..-2].join(' ')
vendors [vendor] << model
end
%>
<% for v in vendors.keys.sort do %>
<h2><%= v ></h2>
<ul><% for m in vendors[v].sort do %>
<li><a href=”/files/<%= v + ‘ ‘ + m + ‘ .jpg’ %>” target=”_blank”><%= m %>
<% end %>
<% end %>
2 April 2009
Как видите, на Ruby можно тоже писать коряво, как на PHP 🙂