Есть правило для проверки может ли юзер редактировать, удалять и т.д. Сейчас получается то запись модератора может редактировать обычный пользователь у которого нету commentUpdate|Delete, а только commenOwnUpdate|Delete. Используя:
if(Yii::$app->user->can('commentUpdate', ['user_id' => Yii::$app->user->id])) {
// Пользователь true
// Модератор true
// любой другой false
}
Сейчас в контроллере:
public function behaviors()
{
return [
'access' => [
'class' => AccessControl::className(),
'rules' => [
[
'allow' => true,
'actions' => ['update', 'delete'],
'roles' => ['commentUpdate', 'commentDelete'],
'roleParams' => ['user_id' => Yii::$app->user->id]
]
]
],
];
}
Но обычный юзер все равно может исполнять методы.
UPD
'roleParams' => ['user_id' => $model->user_id]
а не 'roleParams' => ['user_id' => Yii::$app->user->id]