我在数据库中有一个表:
| id | param1 | param2 | param3 | param4 | param5 |
| 1 | value11 |值12 |值13 | 18 | value15 |
| 2 | value21 |值22 |值23 | 17 | value25 |
| 3 | value31 | value32 | value33 | 10 | value35 |
现在我想从数据库,param2和param4中检索数据,并通过param4对数据进行排序
@data={
'0'=>{
'param2'='value32',
'param4'='value34'
}
'1'=>{
'param2'='value22',
'param4'='value24'
}
'2'=>{
'param2'='value12',
'param4'='value14'
}
}
我打算做的是对数据库进行排序并将排序后的结果存储在变量
中遍历此排序结果并检索数据,另存为数组中的哈希值。
但我不知道我怎么能这样做(dun知道ruby语法很好)
提前致谢
答案 0 :(得分:0)
您的问题代码无效,并且与您描述的意图不完全一致。我假设你是在追求这样的事情:
@data=[
{ param2: 'value32',
param4:'value34' },
{ param2:'value22',
param4:'value24' },
{ param2: 'value12',
param4: 'value14'}
]
可以通过以下方式获得:
@user.employees.pluck(:id, :name).inject([]){ |result, element|
result.insert(-1, {param2: element[0], param4: element[1})
}
如果没有,您应该能够根据您的需要调整它。了解注射,它真棒。我最喜欢的描述是excellent tutorial by Jay Fields。