如何从Query Builder数据数组中删除CakePHP 3关联模型?

时间:2017-04-20 10:05:15

标签: php cakephp cakephp-3.x

  

我的Query看起来像 -

$Fields = ['MyModel.a','MyModel.b','OtherModel.c','OtherModel.d'];
$data = $this->MyModel->find('all')
  ->select($Fields)
  ->join([
    'OtherModel' => [
        'table' => 'other_model_table',
        'type' => 'LEFT',
        'conditions' =>[
            'MyModel.uniqueid'=>'OtherModel.uniqueid'
        ]
    ]
]);
  

从查询上方,Output看起来像 -

[
    'a' => 'some_value',
    'b' => 'some_value',
    'OtherModel' => [
        'c' => 'some_value',
        'd' => 'some_value'
    ]
]
  

但我的Expected Output看起来像 -

[
    'a' => 'some_value',
    'b' => 'some_value',
    'c' => 'some_value',
    'd' => 'some_value'
]

有没有解决方案?

1 个答案:

答案 0 :(得分:1)

您必须为另一个表的字段使用自定义别名:

$Fields = [
    'MyModel.a',
    'MyModel.b',
    'c' => 'OtherModel.c',
    'd' => 'OtherModel.d'
];

另见