次のコードを使用して tag_counts ハッシュをソートした後:
sorted_tags = Contact.tag_counts.sort{ |x,y| x.name.downcase <=> y.name.downcase }
文字でグループ化されたタグをビューに表示する最も簡単で効率的な方法は何ですか?
すなわち
A - 「アルファ」、「アップル」、「アザ」
B - 「ベータ」、「ボンカーズ」
.
.
.
Z - 「ゼータ」、「ジマー」
何か案は?
次のコードを使用して tag_counts ハッシュをソートした後:
sorted_tags = Contact.tag_counts.sort{ |x,y| x.name.downcase <=> y.name.downcase }
文字でグループ化されたタグをビューに表示する最も簡単で効率的な方法は何ですか?
すなわち
A - 「アルファ」、「アップル」、「アザ」
B - 「ベータ」、「ボンカーズ」
.
.
.
Z - 「ゼータ」、「ジマー」
何か案は?
わかりました。方法が見つかりました。最も効率的かエレガントかはわかりませんが、次のようになります。
-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(" ") }"