2015-04-01 40 views
1

我有一个GridView和一些列表中的项目是而不是由用户创建,但它们是预先定义的购买我们的开发者。Yii2隐藏动作行动只有一列的列

enter image description here

在上面的图像,与的行(未设定)商店ID是我们所创建的预定义的项。由于它是预定义的,因此它不应该具有“查看”,“更新”和“删除”操作图标。

我们至少如何将这些动作图标隐藏在GridView的预定义项目中?

回答

3

您可以创建新列并设置可调用$content属性。请参阅http://www.yiiframework.com/doc-2.0/yii-grid-column.html# $ content-detail

举例来说。将这个代码Grid列:

[   
    'content' => function ($model, $key, $index, $column) { 
     if ($model->storeId == null) { 
      return Html::a('<span class="glyphicon glyphicon-eye-open"></span>', ['view', 'id' => $model->id]) 
      . Html::a('<span class="glyphicon glyphicon-pencil"></span>', ['update', 'id' => $model->id]) 
      . Html::a('<span class="glyphicon glyphicon-trash"></span>', ['delete', 'id' => $model->id], ['data-method'=> 'post']); 
     } 
    } 
] 

这是我的项目工作像https://yadi.sk/i/2fWnWZBNffQJLhttps://yadi.sk/i/GyHWD9m9ffQK2

+0

非常感谢!完美的作品。看起来像我们有完全相同的问题哈哈! – kaynewilder 2015-04-01 05:03:22

+0

@ vitalik_74。究竟在哪里放置代码片段? – 2016-01-13 11:19:02