我目前有以下代码:
- @alpha = Glossary.find(:all, :order =>"title ASC").group_by{|u| u.title[0]}
- @glossary = Glossary.find(:all, :order =>"title ASC")
- @alpha.each do|a|
%h1= a[0]
- @glossary.each do |g|
%p display stuff
这将显示每个字母下的所有词汇表术语,而不是仅显示以字母开头的术语表。.我已经尝试了一些方法,但不确定如何选择正确的方法。
最佳答案
由于您正在使用@alpha
,因此您应该可以使用group_by
实例变量执行所有操作:
- @alpha = Glossary.find(:all, :order =>"title ASC").group_by{|u| u.title[0]}
- @alpha.each do |alpha, glossary_array|
%h1= alpha
- glossary_array.each do |item|
%p= item