<%= @event.name %> Attendees

<% @event.participants.group_by(&:class).map do |type, participants| %>

<%= link_to(pluralize(participants.size, type.to_s), engine_path(type)) %>

    <% participants.each do |participant| %> <% name_attr = participant.attribute_names.detect{|m_attr| m_attr =~ /name/} %> <% if participant.respond_to?(:name) %>
  1. <%= link_to(participant.send(name_attr), engine_path(participant)) %>
  2. <% elsif name_attr %>
  3. <%= link_to(participant.name, engine_path(participant)) %>
  4. <% end %> <% end %>
<% end %>