关于 indexBy 使用的一个困惑 [ 2.0 版本 ]
我想获取以id为键,name为值的一维数组,下面这样写是不可以的
$post = UAccount::find()
->select('name, id')
->indexBy('id')->asArray()
->column();
看官方的文档上说只能和 all()
一起用,测试是可以的。
但是看魏曦的视频里这样是可以的,
<?= $form->field($model,'status')
->dropDownList(Poststatus::find()
->select(['name','id'])
->orderBy('position')
->indexBy('id')
->column(),
['prompt'=>'请选择状态']);
?>
很困惑,不知道为什么?
看文档里 indexBy
方法是先取出数据,在重建索引,所以 by
值一定要查询出来
共 2 个回答
皎然 南京
注册时间:2017-09-09
最后登录:2024-03-24
在线时长:59小时14分
最后登录:2024-03-24
在线时长:59小时14分
- 粉丝11
- 金钱17190
- 威望10
- 积分17880