2017-12-28 8 views
2

나는 해시 배열을 다음과 같이 가지고있다;Ruby, 기존 키 값이없는 배열 만들기

[{"price" => "123", "amount" => "987"}, {"price" => "432", "amount" => "13"}] 

해시 배열을 다음과 같이 만들려합니다.

[["123", "987"], ["432", "13"]] 

나는 내가하려고 무엇을 달성 할 수

pluckhash.map(&:first).map(&:last)을 시도했습니다.

답변

4

당신은 Hash#values를 사용하여 각 해시 키 값에 액세스 할 수 있습니다

:

array_of_hash_objects = [{"price" => "123", "amount" => "987"}, {"price" => "432", "amount" => "13"}] 

p array_of_hash_objects.map(&:values) 
# [["123", "987"], ["432", "13"]] 

를 레일을 사용하는 경우에, 나는 당신이 뽑은를 사용하지만 필요한 속성 값, 어쩌면 가격과 양을 통과 할 수 추측

Model.query.pluck(:price, :amount) 

참고 쿼리는 데이터를 가져 오는 데 사용하는 방법입니다.

+0

주문이 정확한지 어떻게 알 수 있습니까? –

+0

당신이 통과하면, 당신은 얻을. 해시의 순서는 결과 배열의 순서입니다. –

+0

'hash.map (& : values)'은 완벽하게 작동합니다. 하지만 결과 배열의 순서가 다를 수 있다고하셨습니까? "[" "123", "987", [ "432", "13"] "또는 [["987 ","123 "], ["13 ","432 "]] '. 하지만 내 배열은'{{ "price"= "123", "amount"=> "987"}, { "price"=> "432", "amount"=> "13"}]'입니다. 내가 놓친 게 있니? –

관련 문제