2017-01-30 2 views
-2

Kann mir jemand helfen, wie man sonst Bedingungen in Bedingungen Parameter anwenden, während CakePHP Abfrage schreiben. Bitte beachten Sie das Beispiel unten:Wenn Else Bedingungen in CakePHP Bedingungen Parameter

$customerList = $this->Asset->find("list", array(
      "conditions" => array(
       "AUser.status" => 1, 
       'Asset.warranty_status_id' => $warranty_status_id 
       ), 
      "fields" => array("AUserProfile.user_id", "AUserProfile.company_name"), 
      'joins' => array(
       array(
        'alias' => 'AUser', 
        'table' => 'users', 
        'type' => 'LEFT', 
        'conditions' => array(
         'Asset.user_id = AUser.user_id', 
         'Asset.status = 1', 
        ) 
       ), 
       array(
        'alias' => 'AUserProfile', 
        'table' => 'user_profiles', 
        'type' => 'LEFT', 
        'conditions' => array(
         'AUser.user_id = AUserProfile.user_id', 
        ) 
       ) 
      ), 
      "order" => "AUserProfile.company_name ASC", 
      "recursive" => $recursive 
      ) 
     ); 

Ich muss Bedingung in Bedingungen Array Block schreiben.

+0

Können Sie die gewünschte unbearbeitete Abfrage bereitstellen, die Sie möchten. Damit können wir die gleiche Abfrage mit cakephp machen. –

Antwort

0

Wenn ich es richtig verstanden habe, könnte man ternäre Operator wie folgt verwenden:

// ... 
'conditions' => CONDITION ? VALUE_FOR_TRUE : VALUE_FOR_FALSE; 
// ... 

Wo Bedingung kann die gleiche sein, dass Sie innerhalb if() Anweisung gesetzt.