我有一个方法,它接受一个rails活动记录对象数组,并根据传递给方法的第二个参数对这些记录进行排序。该方法类似于:
sort_providers(providers, "name")
当我调用方法unexpected tSTRING_BEG, expecting '('
时,我得到 "gallery": [
{
"galleryId": 113,
"type": "image",
"filename": "image_599bbbb569b78.png"
},
{
"galleryId": 114,
"type": "image",
"filename": "image_599bbdd023a31.png"
}
],
"likeCount": 2,
。
如何根据传入的第二个参数获取方法对数组进行排序?
答案 0 :(得分:0)
尝试使用send
providers.sort_by! { |a, b| a.send(attr) <=> b.send(attr) }
答案 1 :(得分:0)
如果attr
是符号:
providers.sort_by(&attr)