мне нужен массив, который дает мне @idea.id
отсортированный по @idea.created_at.month
Сортировки по месяцу в массиве Ruby On Rails
Например:
[[1,2,3], [4,5,6], [7,8,9], [], [], [], [], [], [], [], [], []]
где идентификаторы 1, 2 и 3 имеют @idea.created_at.month = 1
и так далее через month = 12
.
@ideas_by_month = Array.new(12){Array.new}
@ideas.each do |idea|
month = idea.created_at.month
@ideas_by_month[month-1] << idea.id
end
К примеру, мне нужно @ideas_by_month[0]
дать мне Идентификаторы 1
, 2
, 3
.
Это в настоящее время добавляет все идеи в один слот []
и не сортируется правильно. Как я могу изменить его, чтобы мой массив выглядел как пример?
, что вы имеете в виду, что это неправильно? можете ли вы показать, что вы получаете, а что не так? –
Это дает мне [Idea.all] без 12 слотов, не сортируя по 12 слотам. Данные приведены с мая и июня, поэтому должно быть не менее 2 слотов. –
@ RustamA.Gasanov вы видите какую-либо другую причину, что этот (отредактированный) массив не будет работать? Он все еще дает тот же результат, который я описал выше. –