@hollanditkzn

Как указать в роле чтобы не показывалось кнопка?

У меня проблема, есть в базе активные записи и не активные, в бд за это отвечает строка action
Мне нужно, если я захожу в архив и во view то кнопка должна высвечиваться, если аходишь в активные данные, то во view не должно высвечиваться данная кнопка
Вот примерно я реализовал данный, но у меня она постоянно высвечивается.
<?php if (Yii::$app->user->can('admin', [Zakaz::find()->where(['active' => 0])])) { ?>
        <?= Html::a('Восстановить заказ', ['restore', 'id' => $model->id_zakaz], ['class' => 'btn btn-primary pull-right',
            'data' => [
                'confirm' => 'Вы действительно хотите восстановить заказ',
                'method' => 'post',
            ],
            ]) ?>  
        <?php } ?>
  • Вопрос задан
  • 89 просмотров
Решения вопроса 1
webinar
@webinar Куратор тега Yii
Учим yii: https://youtu.be/-WRMlGHLgRg
Вот это
Yii::$app->user->can('admin', [Zakaz::find()->where(['active' => 0])]))

подразумевает, что есть правило admin и в нем есть некая логика. в которую Вы передаете Zakaz::find()->where(['active' => 0])] Так что надо бы показать эту логику.
Но меня сильно смущает Zakaz::find()->where(['active' => 0]) наверное не хватает ->one() в конце, хотя опять же не видя логики, сложно сказать.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы