$orders = $this->Orders->find('all') ->contain(['Order_detail'])->where(['id'=>$id])->first();
上記から、さらにOrder_detailにひもづくUsersTBLの情報を取得したいです。
UsersTBLとOrder_detailTBLはアソシエーション定義をしているのですが、Ordersにはひもづかないため、下記では取得できません。
$orders = $this->Orders->find('all') ->contain(['Order_detail','Users'])->where(['id'=>$id])->first();
※追記です(アソシエーションの定義)
public function initialize(array $config) { parent::initialize($config); $this->table('Order_detail'); $this->displayField('id'); $this->primaryKey('id'); $this->belongsTo('Orders', [ 'foreignKey' => 'order_id', 'joinType' => 'INNER' ]); $this->belongsTo('Users', [ 'foreignKey' => 'user_id', 'joinType' => 'INNER' ]);
なにか良い方法あれば教えて欲しいですー!