您的位置:首页 > 编程语言 > PHP开发

yii, gridview隐藏查看view按钮以及自定义查看按钮链接

2017-07-13 09:24 597 查看
一般开发后台是不需要view按钮的,所以需要隐藏掉view按钮:

在yii源码中有这样一个定义:

public $template = '{view} {update} {delete}';

所以我们可以在gridview中这样把view去掉就可以不显示view按钮了
[
'class' => 'yii\grid\ActionColumn',
'template' => '{update} {delete}',
],

对于自定义查看按钮链接:
源码中也有一个定义:

/**
* @var array button rendering callbacks. The array keys are the button names (without curly brackets),
* and the values are the corresponding button rendering callbacks. The callbacks should use the following
* signature:
*
* ```php
* function ($url, $model, $key) {
* // return the button HTML code
* }
* ```
*
* where `$url` is the URL that the column creates for the button, `$model` is the model object
* being rendered for the current row, and `$key` is the key of the model in the data provider array.
*
* You can add further conditions to the button, for example only display it, when the model is
* editable (here assuming you have a status field that indicates that):
*
* ```php
* [
* 'update' => function ($url, $model, $key) {
* return $model->status === 'editable' ? Html::a('Update', $url) : '';
* },
* ],
* ```
*/
public $buttons = [];

所以我们可以修改gridview的按钮:

[
'class' => 'yii\grid\ActionColumn',
'template' => '{view} {update} {delete}',
'buttons' => ['view' => function ($url, $model, $key) {
$icon = Html::tag('span', '', ['class' => "glyphicon glyphicon-eye-open"]);
$url = Url::to(['ad/index', 'pid' => $model->id]);
return Html::a($icon, $url);
}],
],
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐