2016-10-20 3 views
0

Yii2.Iで保存した後に自動インクリメントIDを取得しようとしていますが、次のコードブロックを試しましたが動作しません。あなたはすぐに新しいGroupsインスタンスを作成した後、$model変数はまだのみ、あなたがそれに入れたデータを有していてもよく$model->idを返すようにしようとしているYii2で保存した後に自動インクリメントIDを取得する方法

public function actionAddgroup() 
{ 
    $model = new Groups(); 
    $model->groupName=Yii::$app->request->post('groupName'); 

    $model->save(); // a new row is inserted into user table 
    return $model->id; 
} 

答えて

-1
public function actionAddgroup() 
{ 
    $model = new Groups(); 
    $model->groupName=Yii::$app->request->post('groupName'); 

    $model->save(); // a new row is inserted into user table 
    return $model->getPrimaryKey(); 
} 
0

データベースレベルでデータを追加するには、ローカルの$model変数のデータをデータベースの現在のデータで最新表示するために、$model->refresh()を呼び出す必要があります。言い換えれば

、これを試してみてください。

public function actionAddgroup() 
{ 
    $model = new Groups(); 
    $model->groupName=Yii::$app->request->post('groupName'); 

    $model->save(); 
    $model->refresh(); 
    return $model->id; 
} 
関連する問題