YII2连接左表子属性不显示

多表进行关联时,关联时做好了,就是不显示子表的字段,

//控制器 
$devlist = Dtest::find()
                ->alias('d')
                ->joinwith('school')
                ->select('d.title, t.testname')
                ->asArray()//加上这个就可以显示子字段了
                ->all();
//Dtest 模型中

    public function getschool(){
        //第一个参数还是关联的模型,第二个依旧还是数组,数组第一个就是关联的 模型的外键,第二个就是自身的外键
      return $this->hasMany(Schooltest::class,['schoolid'=>'testid'])->asArray();

   }

本以为这样就可以了,结果报错

Undefined index: testid

后来改成

//控制器 
$devlist = Dtest::find()
                ->alias('d')
                ->joinwith('school')
                ->select('d.title, d.testid, t.testname')//需要显示主表或副表关联id
                ->asArray()//加上这个就可以显示子字段了
                ->all();
//Dtest 模型中

这样就可以显示又不会出错了。

本作品采用《CC 协议》,转载必须注明作者和本文链接
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!