У меня есть 2 модели: Member и Slot, и между ними есть средняя таблица с именем MemberSlot для отношения has_many through.
Теперь пользователь приходит и регистрируется в слоте.Слот имеет имя поля slot_date.
Для метрик на индексной странице я должен показать, сколько раз каждый участник регистрировался на слот в терминах дня недели, используя поле даты slot_date.
Like
User Monday Tuesday Wednesday Thursday Saturday Sunday Total
---------------------------------------------------------------
Faisal 0 1 1 3 0 1 6
User2 1 0 0 0 1 2 4
User3 0 0 0 0 0 0 0
, а затем разрешить пользователю сортировать эту таблицу, например, по понедельникам или по итогу.
Я пытался сделать что-то вроде
Slot.joins(member_slots: [:member]).group("members.id").group_by_day_of_week(:slot_date).count
Проблема в том, что я недаже в состоянии отсортировать это по конкретному дню и не возможно по общему количеству, а затем нужно выбрать элемент в цикле, чтобы показать, так что это не осуществимо.
кто-то может предложить правильный способ справиться с этим.
Ожиданиеза ваш ответ.