Yii2 Удалить запись с запросом POST - PullRequest
0 голосов
/ 05 сентября 2018

Как я могу удалить запись из базы данных (MySQL) с помощью запроса POST?

В поле зрения:

<a href="<?= Url::to(['user/delete', 'id' => Html::encode($user->id)]) ?>" class="btn btn-danger">Delete</a>

В контроллере:

public function actionDelete($id)
{
    $model = User::findOne($id);

    if (Yii::$app->request->isPost) {
        $model->delete();
        Yii::$app->session->setFlash('success', 'User deleted successfully');
    }

    return $this->redirect(['user/index']);
}

Этот код удаляет только с запросом GET.

1 Ответ

0 голосов
/ 05 сентября 2018

Установить кнопку удаления, как это

<?= Html::a('Delete', ['user/delete', 'id' => $user->id], [
                'class' => 'btn btn-danger',
                'data-confirm' => 'Are you sure?',
                'data-method' => 'post',
            ]) ?>

И Html класс

используйте yii \ helpers \ Html;

...