【问题标题】:Yii2 Hide Actions in Action Column of a Single Row onlyYii2 仅在单行的操作列中隐藏操作
【发布时间】:2015-04-01 04:02:48
【问题描述】:

我有一个GridView,列表中的某些项目不是由用户创建的,但它们是预先定义的,请购买我们,开发人员。

在上图中,带有 (未设置) 商店 ID 的行是我们创建的预定义项目。由于它是预定义的,它不应该有“查看”、“更新”和“删除”的操作图标。

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

【问题讨论】:

    标签: php gridview action yii2


    【解决方案1】:

    您可以创建新列并设置可调用的$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

    【讨论】:

    • 非常感谢!完美运行。看起来我们有完全相同的问题哈哈!
    • @vitalik_74。在 sn-p 上方的确切位置?
    猜你喜欢
    • 2015-01-24
    • 1970-01-01
    • 1970-01-01
    • 2013-12-18
    • 2013-12-04
    • 2014-03-18
    • 1970-01-01
    • 2013-04-20
    • 2012-05-28
    相关资源
    最近更新 更多