Кнопка в gridview yii2

Я создал кнопку просмотра профиля в gridview. Когда пользователь нажимает кнопку просмотра профиля, он переходит в профиль на основе user_id. Вот код

      <?= GridView::widget([
 'dataProvider' => $dataProvider,
 'id' => 'mygrid',
 'columns' => [
    ['class' => 'yii\grid\SerialColumn'],
    'user_id',
    'project_name',
    ['class' => 'yii\grid\ActionColumn'],
    [
        'label' => 'View Profile',
        'format' => 'raw',
        'content' => function($model) {
            return Html::a('View', ['projectstudent/viewprofile', 'id' =>     $model->user_id],
                ['class' => 'btn btn-primary']);
        }
    ],
]
 ]); ?>

На контроллере

    public function actionViewprofile($id)
{
 return $this->render('profile', [
        'model' => $this->findModel($id),
    ]);
}

Запрашиваемая страница не найдена. Как я могу исправить код? Благодарю.

1 ответ

Здесь может быть проблема с именем контроллера, которое вы указали, нет необходимости определять имя контроллера, если вы хотите вызвать действие того же контроллера.

Поэтому замените ваш код этим и попробуйте снова

 return Html::a('View', ['viewprofile', 'id' =>$model->user_id],
            ['class' => 'btn btn-primary']);
Другие вопросы по тегам