ボタン「イン」をクリックすると、出席の新しいレコードが作成されます。ボタン「アウト」をクリックすると、以前に新しいレコードから作成されたレコードが更新されます。
このような場合、クエリを使用して SQL で実行するか、Yii 自体で実行する必要がありますか?
これまでに試したことは、「In」ボタンの新しいレコードを作成できますが、「Out」ボタンをクリックすると、レコードは更新されず、Null In Time で新しいレコードが作成されます。
テーブルのデザインはこちら
id empid date in out status desc
1 20 2016-11-01 08:00 1 In
編集:
これは「In」ボタンのコントローラーです
public function actionIn()
{
// $session->open();
// $
$model = new AttDetail();
$idAbsen = Att::find()->where(['empID'=>Yii::$app->user->id])->one();
$db = Yii::$app->getDb();
$command = $db->createCommand('
SELECT group_shift.In FROM group_shift JOIN att on group_shift.Id = att.IdGs WHERE att.empId = 1
');
$In = $command->queryOne();
if ( $model->load( Yii::$app->request->post() ) && $model->save() )
{
return $this->redirect(['index', 'id' => $model->Id]);
}
else
{
return $this->render('in', [
'model' => $model,
'in' => $in,
'in' => $idAtt
]);
}
}
これが私のインデックスです
'toolbar'=> [
['content'=> Html::a('<i class="glyphicon glyphicon-plus"></i> In', ['in'],['class'=>'btn btn-success']),
],
],
'columns' => [
['class' => 'kartik\grid\SerialColumn'],
'Id',
'IdAtt',
'Date',
'In',
'Out',
['class' => 'kartik\grid\ActionColumn',
'template' => Html::a('<i class="glyphicon glyphicon-plus"></i> Out', ['out'],['class'=>'btn btn-success']),
'dropdown'=>false,
'dropdownOptions'=>['class'=>'pull-right'],
これがどのように行われるかについてのすべての提案を受け入れます。ありがとう