2014-02-20 6 views
0

Я группирую элементы массива, используя приведенный ниже код, но он чувствует себя медленно. Есть ли более быстрый/лучший способ группировки?Как сгруппировать массив самым быстрым способом?

@tasks_sorted = @tasks.group_by(&:start_date).map do |month, data| 

     hash = {"date" => month} 

     data.each {|placement| hash["tasks"] = data} 

     hash 

    end 
+1

код вводит в заблуждение логика .. Не ясно –

ответ

3

Я думаю, что ниже вы ищете:

@tasks_sorted = @tasks.group_by(&:start_date).map do |month, data| 
    {"date" => month, "tasks" => data } 
end 
+2

Намерение OP является не ясно, но этот код, по крайней мере эквивалентно ОП-х. Надеюсь, это снова не проигнорируется. – sawa

+0

Спасибо, ребята, и снова я никого не игнорирую;) –

Смежные вопросы