Rails acts_as_taggable_on gruppiert alphabetisch?
-
19-09-2019 - |
Frage
Nachdem der Hash tag_counts über den folgenden Code sortiert wurde:
sorted_tags = contact.tag_counts.sort {| x, y | X.Name.downcase <=> y.name.downcase}
Was ist der einfachste/effizienteste Weg, um die Tags meiner Ansicht nach Buchstaben zu zeigen?
dh
A - "Alpha", "Apple", "Aza"
B - "Beta", "Bonkers"
.
.
.
Z - "Zeta", "Zimmer"
Irgendwelche Ideen?
Lösung
Ok, ich habe einen Weg gefunden, nicht sicher, ob es sich am effizientesten oder elegantesten ist, aber hier geht es:
-sorted_tags = Contact.tag_counts.sort{ |x,y| x.name.upcase <=> y.name.upcase }.map(&:name)
%ul
-"A".upto("Z") do |l|
%li="#{l} = #{ sorted_tags.select{ |x| x.upcase.starts_with?(l)}.map{|k| link_to k, k}.join(" ") }"
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow