Мне нужно проверить и выбрать последний из массива хешей. Структура такова:Проверьте и выберите последний из массива хэшей
'histories':[
{
{
...
},
'created': "date1",
'items':[
{
'a': "Ready",
'b': "dfknsknfs",
},
{
'a': "sdfjbsf",
'b': "hello23",
}
]
},
{
{
...
},
'created': "date2",
'items':[
{
'a': "sknfkssd",
'b': "ksdfjshs",
},
{
'a': "Ready",
'b': "shdfjsh",
}
]
},
...
]
Я должен сначала найти для значения «Ready», а затем я должен выбрать последнюю «созданную» дату.
Моя попытка для этого, как
ready_item = histories.select { |item| item.items.detect {|f| f.a == "Ready" } }
ready_item
Но поскольку detect
используется, она возвращается только первое обнаруженное значение. Но мне нужно получить последнюю дату. Каким должно быть это возможное решение?
У вас есть неправильный синтаксис хэша и ваша попытка не работает тоже, потому что это недопустимое выражение. –
Я опубликовал такую же структуру. Не могу опубликовать данные из него. его частный –
нормально, но 'item.items.detect' не работает. –