Запрос в отношения Many to Many в Laravel 4


Здравствуйте, я "empacado" в проблеме с отчет клиента.

у Меня есть следующее отношение:

  • Модуль (id, имя)
  • Связан (id, имя, superior_id)
  • Associados_Modulos (modulo_id, associado_id, класс, поступил, учусь, отказался)

что мне нужно, это: перечислить все модули, относящиеся к "superior_id", со следующими сведениями:

  • сколько классов принадлежит этот модуль = здесь первая проблема: класс-это varchar.. только описание, например: Класс 45 с 08:00 до 21:00.
  • сколько новых членов в отношении этого модуля присутствуют
  • сколько новых членов в отношении этого модуля, обучающиеся
  • сколько новых членов в отношении этого модуля сдались

, в общем, не знаю, какой лучший способ сделать это отношения (many-to-many?), и какой лучший способ сделать это консультации, в основном в классе быть varchar, а не ḿodulo-либо, что я мог бы сделать count (через отношения, по умолчанию).

Любой информации, которая им понадобится, дайте мне знать.

Author: Patrick Maciel, 2014-08-16

1 answers

Было Бы более или менее так: Это лучший способ использовать, например, Query Builder видно, что Eloquent находится через гипса.

DB::table('associados_modulos')            
        ->join('modulo', 'associados_modulos.modulo_id', '=', 'modulo.id')
        ->join('associado', 'associados_modulos.associado_id', '=', 'associado.id')
        ->where('superior_id', $codigoSuperior_id)
        ->groupBy('modulo_id')            
        ->select(DB::raw('count(turma) qtdeturmas, sum(matriculado) qtdematriculados, count(desistiu) qtdedesistiu, modulo_id'))
        ->get();
 2
Author: Maria, 2014-08-16 23:56:07