yii2 - 在 Yii2 ArrayDataProvider 中使用闭包

标签 yii2 dataprovider

ActiveDataProvider中,您可以使用闭包作为值,例如:

$dataprovider = new ArrayDataProvider([
    'allModels' => $array
]);

$gridColumns = [
    'attrib_1',
    [
        'attribute' => 'attrib_2',
        'label' => 'Label_2',
        'value' => function($model) {
            return Html::encode($model->value_2);
        }
    ],
    'attrib_3'
];

echo GridView::widget([
    'dataProvider'=> $dataprovider,
    'columns' => $gridColumns
]);

是否可以在 ArrayDataProvider 中执行相同或类似的操作?

最佳答案

是的。唯一的区别是 $model 不是对象而是数组,因此:

'value' => function($model) {
    return Html::encode($model['value_2']);
}

关于yii2 - 在 Yii2 ArrayDataProvider 中使用闭包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41890420/

相关文章:

使用 yii2-relation-trait 的 Yii2 wbraganca-dynamicform 更新不删除项目

用于 .NET 的 Oracle 数据提供程序已在没有机器范围配置的情况下安装

ruby 数据提供者?

java - 有没有办法在 TestNG 报告摘要中显示我的 DataProvider 值?

php - yii2 : How to Customize Error Pages like 404 and 503

php - 在 Yii2 中覆盖 Bootstrap CSS

php - 在YII2中使用Gii创建 View 和 Controller 时,PHP编译错误

java - 在 TestNG 中使用带有 DataProvider 的文本文件

mysql - SSMS 中的 SSIS 包 - ADO NET 源无法获取连接 - 无法创建托管连接管理器

php mysql ssl 连接失败,访问被拒绝错误