Вопрос: Как мне создать подобный сгруппированный массив?
event_id: 1, person_id: 1, tasks: [1, 2]
event_id: 1, person_id: 2, tasks: [3]
event_id: 2, person_id: 1, tasks: [4]
Данные:
Таблица задач:
Event.rb:
has_many :tasks
has_many :people
Task.rb
belongs_to :event
Person.rb
belongs_to :event
Я думаю сделать что-то вроде этого (не работает):
- @grouped_tasks = Task.all.group(:event_id, :person_id).each do |z|
= z.event.id
= z.member.id
= z.tasks.collect{|r| r.task.name}.join(",")
= z.tasks.pluck(:name)