gpt4 book ai didi

gridview - Yii2 GridView 值调用模型函数

转载 作者:行者123 更新时间:2023-12-04 01:52:38 28 4
gpt4 key购买 nike

在我的用户模型中我有一个函数:

public function getRole() {
if ($this->role == self::ROLE_USER) {
return "user";
} else if ($this->role == self::ROLE_ADMIN) {
return "admin";
}

return "unassigned";
}

在 GridView 中我想调用它,但无法弄清楚在 Yii2 中如何,旧的 Yii 方法似乎不起作用:

[
'attribute' => 'role',
'filter' => false,
'format' => 'raw',
'value' => '$model->getRole()',
],

我不想使用匿名函数:

'value' => function($model) {
switch($model->role) {
case 10:
return "user";
break;
case 90;
return "admin";
break;
default;
return "unassigned";
break;
}
},

最佳答案

你可以使用闭包(匿名函数)

[
'attribute' => 'role',
'filter' => false,
'format' => 'raw',
'value' => function ($model) {
return $model->getRole();
},
],

value 属性的设置可以用字符串或匿名函数完成(没有其他)

$value - public property

An anonymous function or a string that is used to determine the value to display in the current column.

If this is an anonymous function, it will be called for each row and the return value will be used as the value to display for every data model.

http://www.yiiframework.com/doc-2.0/yii-grid-datacolumn.html# $值(value)细节

如果所需的值与 $model 实例相关,则匿名函数是唯一的可能

关于gridview - Yii2 GridView 值调用模型函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38795837/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com