2016-04-28 15 views
0

Ich bin neu in CakePHP 3. Unten ist mein Code.Wie leere Bedingungen in Controller von CakePHP geben 3.2 während Modell binden?

$getFlags = $this->Posts->find('all')->contain(['Users', 'Flags.Users', 'Flags.FlagReasons', 'Flags.Users.Schools']); 

Ausgang

{ 
     "id": 114, 
     "title": "", 
     "allow_comment": 0, 
     "owner_id": 84, 
     "created": "2016-04-08T04:41:08+0000", 
     "status": 1, 
     "flags": [], 
     "user": { 
      "id": 84, 
      "profile_image": "bc7484cd8caad0de055f8d7ef15551f5.png", 
      "is_active": 1 
     } 

Hier möchte ich eine Bedingung geben, wenn es eine leere Flag ist, wird es nicht in Folge aufgeführt werden. Nur Post mit Flagge wird kommen. Bitte schlagen Sie mir vor. ANy suggstion wird sehr zu schätzen wissen.

Antwort

0

Es gibt zwei Möglichkeiten, dies zu tun zu bekommen:

  • nach diesem Feld ein counter cache und Filter verwenden (flag_count> 0)
  • eine subquery Sie die Zählung (ineffizient)
zu erhalten