我目前有以下代码:
- @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