为了账号安全,请及时绑定邮箱和手机立即绑定

如何修改 Yii2 createCommand() 函数生成的结果

如何修改 Yii2 createCommand() 函数生成的结果

PHP
侃侃尔雅 2021-06-02 10:50:36
我的控制器中有一个 SQL 查询。结果有两个字段:id_person和name_person。然后我用来ArrayDataProvider在 a 中显示结果GridView:return new ArrayDataProvider([    'allModels' => Yii::$app->getDb()->createCommand($mySql)->queryAll()]);但是更新按钮的 id不是id_person. 它有一个自动生成的 id。所以我有一个包含以下字段的数据提供者:id,id_person和name_person。我需要替换id为id_person.我可以在更新按钮的操作下在我的视图文件中解决它,但最好在我的控制器中解决它。我检查了Yii 2.0的API 文档,但它对我没有帮助。
查看完整描述

1 回答

?
宝慕林4294392

TA贡献2021条经验 获得超8个赞

您应该配置ArrayDataProvider::$key属性以指定具有记录 ID 的列:

return new ArrayDataProvider([

    'allModels' => Yii::$app->getDb()->createCommand($mySql)->queryAll(),

    'key' => 'id_person',

]);


查看完整回答
反对 回复 2021-06-04
  • 1 回答
  • 0 关注
  • 248 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信