PHP code example of dacduong / yii2-inlinegrid
1. Go to this page and download the library: Download dacduong/yii2-inlinegrid library. Choose the download type require. 2. Extract the ZIP file and open the index.php. 3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
dacduong / yii2-inlinegrid example snippets
php composer.phar
public function actionSaveRow($week = '') {
Yii::$app->response->format = Response::FORMAT_JSON;
$req = Yii::$app->request;
if ($req->isAjax) {
$formName = 'Timetable';
$className = Timetable::className();
$req = $req->post($formName);
$rowData = array_values($req)[0];
$id = $rowData['id'];
$model = $id > 0 ? $className::findOne($id) : null;
if ($model == null) {//for insert
$model = new $className();
}
//formName in load function must set to empty
if ($model->load($rowData, '') && $model->save()) {
}
return ['result' => $model, 'errors' => $model->errors];
}
return [];
}
public function actionReloadRow() {
Yii::$app->response->format = Response::FORMAT_JSON;
$req = Yii::$app->request;
if ($req->isAjax) {
$className = Timetable::className();
$id = $req->post('id');
$model = $id > 0 ? $className::findOne($id) : null;
if ($model == null) {//for insert
Yii::error("actionReloadRow fail: no record found for id $id");
return [];
}
return ['result' => $model];
}
return [];
}
public function actionDeleteRow()
{
Yii::$app->response->format = Response::FORMAT_JSON;
$req = Yii::$app->request;
if ($req->isAjax) {
$id = $req->post('id');
$result = $this->findModel($id)->delete();
if ($result === false) {
Yii::error("actionDeleteRow fail: $id");
return ['errors' => true];
}
return ['errors' => false];
}
return [];
}