Zählen Sie in enthalten Cakephp 3

Ich habe einen TischPos und das hat einhat viel Assoziation mit einem TischStern.

Ich kann alle zugehörigen Daten abrufen mit:

$this->Posts->find()->contain(['Stars']);

Das funktioniert gut.

Aber ich möchte die Sterne zählen. Ich habe es versucht, aber es funktioniert nicht:

$this->Posts->find->contain([
    'Stars' => function($q) {
        return $q->select(['total' => $q->func()->count('Stars.post_id')]);
    }
]);

//I've also tried this
...
...$q->select(['total' => "COUNT(Stars.post_id)"]);
...
//Also fail

Dies gibt nicht die Anzahl der zugeordneten Sterne zurück.

Ist etwas falsch oder sollte es anders gemacht werden?

Vielen Dan

Antworten auf die Frage(6)

Ihre Antwort auf die Frage