2012-02-25 14 views
5

Ho già fatto un modello per form.In che i campi erano comeOttenere ultimo valore inserito nel Yii

id 
firstname 
lastname 
description 
created_at 
updated_at 
created_by 
updated_by 

ho fatto necessari per CRUD Form.Now voglio ottenere un campo aggiuntivo per l'ultimo inserito id in view file. Come ottenere quel valore? Per ottenere quel valore dovrei apportare eventuali modifiche necessarie in CRUD? Qualsiasi aiuto e suggerimento sarà altamente apprezzabile.

+0

duplicati di http: //stackoverflow.com/questions/9456132/getting-last-inserted-id-from-mysql-in-yii e http://stackoverflow.com/questions/9436264/ascending-form-numbers-in-yii – Avanche

risposta

21

È possibile ottenere l'ultimo ID inserito in questo modo:

Yii::app()->db->getLastInsertId(); 

Vedere la Yii documentation per ulteriori informazioni.

+0

ID non Id. con il capitale D Yii :: app() -> db-> getLastInsertID(); –

1

Se il tuo obiettivo è quello di ottenere l'id che è stato assegnato al modello che hai appena salvato, dopo aver fatto $model->save(), semplicemente fare $model->id per riaverlo.

2

Se $model->id non funziona, utilizzare Yii::app()->db->getLastInsertId() o getPrimaryKey().

+0

'Yii :: app() -> db-> getLastInsertId()' sembra migliore, in quanto può essere utilizzato ovunque al di fuori del modello (come nelle migrazioni) e non rientra nelle opinioni discusse [qui] (http: // www. yiiframework.com/forum/index.php/topic/6566-how-to-know-the-last-record-id-inserted/page__view__findpost__p__33653). Ma, ovunque - bella risposta (+!). Grazie. – trejder

2

è inoltre possibile ottenere l'ultimo ID inserito di un altro modello.

$std_id = Students::model()->findAll(array('order' => 'admission_no DESC','limit' => 1)); 

      foreach($std_id as $f) { 

       echo "Last Inserted Admission No:".$f['admission_no']; 
       } 

o

può durare inserito id nello stesso modello

Yii::app()->db->getLastInsertID(); 
0

Riferimento Link: Here

$model->primaryKey or 
$model->id // this is your primary key item 
2

In Yii2 ultimo ID inserito può essere ottenere utilizzando

Yii::$app->db->getLastInsertedID(); 

aggiunto per le persone in cerca di una risposta della stessa domanda in yii2

0

In Yii2 ultimo ID inserito può essere GET

Yii::$app->db->getLastInsertID(); 

Non utilizzare

Yii::$app->db->getLastInsertedID(); 
Problemi correlati