【发布时间】:2017-05-25 11:54:43
【问题描述】:
在我的控制器中,我将所有 Extras 按类别分组:
def index
@categories = Extra.all.group_by(&:category)
end
结果类似于哈希数组:
{#<Category id:1, sort:2> => [#<Extra id:1>,#<Extra id:2],
#<Category id:2, sort: 1> => [#<Extra id:3>,#<Extra id:4>]}
我想按类别“排序”列而不是 id 进行排序,应该如下所示:
{#<Category id:2, sort:1> => [#<Extra id:3>,#<Extra id:4],
#<Category id:1, sort: 2> => [#<Extra id:1>,#<Extra id:2>]}
当我尝试时:
def index
@categories = Extra.all.group_by(&:category).sort_by{|s| s[:sort]}
end
我得到“没有将符号隐式转换为整数”。那是因为我在“sort_by”中使用了一个符号吗?
【问题讨论】:
标签: ruby-on-rails ruby activerecord