2012-02-25 12 views
5

już wykonany model dla form.In że pola były jakGetting ostatni wstawiony wartość w Yii

id 
firstname 
lastname 
description 
created_at 
updated_at 
created_by 
updated_by 

dokonaniu niezbędnych CRUD dla Form.Now Chcę dostać jedno dodatkowe pole na ostatni wstawiony id w widoku pliku. Jak uzyskać tę wartość? Aby uzyskać tę wartość, należy wprowadzić niezbędne zmiany w CRUD? Każda pomoc i sugestie będą bardzo przydatne.

+0

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

Odpowiedz

21

można uzyskać ostatni zapisany identyfikator takiego:

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

Patrz Yii documentation aby uzyskać więcej informacji.

+0

ID not ID. z kapitałem D Yii :: app() -> db-> getLastInsertID(); –

1

Jeśli Twoim celem jest uzyskanie identyfikatora przypisanego do właśnie zapisanego modelu, po zrobieniu $model->save() po prostu wykonaj $model->id, aby go odzyskać.

2

Jeśli nie działa $model->id, użyj Yii::app()->db->getLastInsertId() lub getPrimaryKey().

+0

'Yii :: app() -> db-> getLastInsertId()' wydaje się być lepszy, ponieważ można go używać w dowolnym miejscu poza modelem (jak w przypadku migracji) i nie należy go traktować jako tematu [tutaj] (http: // www. yiiframework.com/forum/index.php/topic/6566-how-to-know-the-last-record-id-inserted/page__view__findpost__p__33653). Ale nigdzie - ładna odpowiedź (+!). Dzięki. – trejder

2

można również uzyskać ostatni wstawiony identyfikator innego modelu.

$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']; 
       } 

lub

może ostatni wstawiony id w tym samym modelu

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

referencyjny Link: Here

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

W Yii2 ostatni wstawiony id można uzyskać stosując

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

dodaną dla ludzi szukających odpowiedzi na to samo pytanie w yii2

0

W Yii2 ostatni zapisany identyfikator można uzyskać stosując

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

nie używać

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