我有一個名爲Invoice
。我的模型已經做了必要的CRUD for Invoice model
.The attributes
發票模型是像Invoice Title, Invoice No, Invoice Issue Date, Description
。現在我想的是when a user will redirect to invoice create page,the input field for Invoice No should be automatically filled in the create page with last inserted id +1 and it should have prefix like INV:.So the input field for Invoice No should be like this INV:12.
通過該用戶並不需要以遞增的順序手動填寫發票號。這裏是創建頁面的圖像。 如何獲得最後插入的id在Yii中創建
1
頁
A
回答
2
首先==>This is not a good idea to store Invoice number dependent on table's unique id
所以,你應該插入最後一個發票號的數字部分+ 1文本..
現在先得到最後的發票模型,然後找到自己的發票號碼和填充字段..
在控制器..
$model = new Invoice;
$last_invoice = Invoice::model()->find(array('order'=>'id DESC'));
$last_invoice_number = str_replace("INV:", "", $last_invoice->invoice_mumber);
$new_invoice_number = $last_invoice_number+1;
$model->invoice_number = "INV:".$new_invoice_number;
$this->render('create',array('model'=>$model));
編輯:
之所以不能使用Yii::app()->db->lastInsertId)
..
首先,我排在首位表示,其不會從table..second的唯一ID好相關的發票編號什麼,如果在某些其它之間有人表插入sonething。 。第三如果該數據庫連接被關閉之間開始..
0
只是一個建議:
如果用戶不需要填寫發票號碼,然後你爲什麼不只是從顯示跳過它。我的意思是不要在創建時顯示它。表單提交後,您可以顯示發票號碼上的所有提交值。
表單提交後,您可以簡單地顯示發票號碼$ model - > id;其中id是數據庫中的發票號碼。
您可以使用發票號碼作爲數據庫中的主要自動增量bigint值。然後在顯示時使用INV:前綴。
希望它有幫助!
+0
非常感謝Ujjwal的建議。我正在考慮在這方面做所有事情。真的謝謝你的建議。 – NewUser
0
這是獲取Yii中最後一個insert id的簡單方法。
Yii::app()->db->getLastInsertId();
相關問題
- 1. 如何獲得laravel中最後插入的ID 5.4
- 2. 如何獲取最後插入的ID?
- 3. 如何獲得最後插入的ID - Zend的
- 4. 如何獲得最後插入sqlite的ID xamarin形成
- 5. 如何獲得最後插入的ID時有插在PL/pgSQL的
- 6. 如何獲得最後插入
- 7. Yii:創建時在控制器動作中獲取最後插入的相關表的ID
- 8. 如何在java中獲取最後插入的ID mysql mysql
- 9. 如何在LINQ中獲取最後一個插入的ID EF
- 10. 如何在MySQL中獲取最後4個插入的ID
- 11. 如何使用OpenERP在Postgresql中獲取最後插入的ID
- 12. 如何在mysql中獲取最後插入的2行perticular id?
- 13. 得到最後插入的id
- 14. Yii中的最後插入id返回錯誤
- 15. 如何在Jquery成功方法中獲得「最後插入ID到數據庫」?
- 16. 如何使用codeigniter和jquery插入後得到最後插入的ID
- 17. 獲取最後插入的行的ID
- 18. 獲取最後插入的值的ID
- 19. 獲取最後插入的ID
- 20. Node + Mongoose:獲取最後插入的ID?
- 21. 獲取最後一個插入的ID
- 22. 如何獲得最後的ID?
- 23. 的Android SQLite的獲得最後插入的行ID
- 24. 如何獲得在neo4j中創建的最後一個節點?
- 25. 如何獲取zf2中最後插入的ID?
- 26. 如何獲取CakePHP 3.0中的最後一個插入ID?
- 27. 如何獲取Web服務中最後插入的記錄ID
- 28. 如何獲取NEO4J中插入的最後一個內部ID?
- 29. 如何獲取MVC中最後一個插入的ID?
- 30. 如何獲取最後一個插入記錄 - Yii 2
'$ instance_of_your_model-> primaryKey'將得到上次插入的模型。 – Leri
如何在_form頁面中實現? – NewUser
這不是一個好主意,如果應用程序將是多用戶。 更好的選擇是在創建表單時不顯示此字段(例如,在_form.php中顯示ID字段,只有在!!$ model-> isNewRecord時),並且_actionCreate_將重定向更改爲_update_動作(而不是Yii的默認值_view_ action) –