2016-08-12 10 views
0

現在のコントローラの2つの他のテーブルの間で結合し、現在のコントローラテーブルに結果を挿入します。これは私のコードが、does'nt仕事です:cakephp3の現在のコントローラの2つの他のテーブルの結合方法は?

class UesrsController extends AppController { 

    public function addRoom() { 
     $rooms = TableRegistry::get("Rooms"); 
     $row = $rooms 
      ->find('list', array('fields' => 'id')) 
      ->join([ 
       'table' => 'dormitories', 
       'conditions' => ['dormitories.id=rooms.dormitory_id'] 
      ]) 
      ->where(['dormitories.name =' => 'aaa']) 
     ; 
     $this->set('row', $row); 
     return $rooms; 
    } 
} 

上記のコードで、私は寮の部屋との間で結合し、usersテーブルに結果保存したいです。

答えて

0

あなたはこのような何かを試みることができる:

をそして私はあなたが参加の種類を追加する必要があると思います。しかし、私はそれが間違っている可能性があります。

class UesrsController extends AppController { 

public function addRoom() { 
    $rooms = TableRegistry::get("Rooms"); 
    $rooms 
     ->find('list', array('fields' => 'id')) 
     ->join([ 
      'table' => 'dormitories', 
      'type' => 'LEFT', 
      'conditions' => ['dormitories.id=rooms.dormitory_id', 
        'dormitories.name =' => 'aaa' 
       ] 
     ]) 
    ; 
} 
} 
関連する問題