Utilizzando saveAll()
per salvare più record in CakePHP, sono in grado di salvarli correttamente in una tabella. Ma il problema sorge durante il recupero degli ID di quelle righe salvate. LastInsertID()
restituisce qui solo un ultimo ID. Come posso ottenere tutti gli ultimi ID inseriti che ho inserito utilizzando saveAll()
?Recupero degli ID inseriti da saveAll() in CakePHP
6
A
risposta
23
funzione AfterSave viene chiamato dopo che ogni individuo, salvo in un'esecuzione SaveAll, così si potrebbe fare: Nella tua AppModel
class AppModel extends Model {
var $inserted_ids = array();
function afterSave($created) {
if($created) {
$this->inserted_ids[] = $this->getInsertID();
}
return true;
}
}
È possibile inserire questo codice in qualsiasi modello e dovrebbe funzionare bene. Poi per tornare gli ID dopo la SaveAll nel controller, si dovrebbe fare in modo simile a questo:
if($this->Post->saveAll($posts)) {
$post_ids=$this->Post->inserted_ids; //contains insert_ids
}
Speranza che aiuta
Problemi correlati
- 1. Recupero degli ultimi ID inseriti per più righe
- 2. Come ottenere gli ID da ormlite SaveAll() chiamata
- 3. chiavi degli array Recupero da ingresso JSON
- 4. Recupero ID seriale da lotto inserito righe in PostgreSQL
- 5. Recupero ID da Div Nome classe in jQuery
- 6. Salvataggio dati spaziali in CakePHP
- 7. Recupero del valore degli elementi creati dinamicamente
- 8. Ottieni ID proprietà senza recupero record
- 9. Recupero dei dati POST con CakePHP senza formhelper
- 10. ASP.Net - Recupero dati da RepeaterItem
- 11. Come si ottiene l'ultimo ID dell'inserto in CakePHP 3.0?
- 12. Recupero del valore da EditText in DialogFragment
- 13. Groovy/Grails: come ordinare l'elenco degli oggetti da id
- 14. Elenco degli ID dei messaggi leggibili da parte di pylint?
- 15. Recupero dati da plist
- 16. recupero da git rebase
- 17. Recupero solo la chiave/id da un ReferenceProperty in App Engine
- 18. Recupero dati da Python XML
- 19. Sintassi UNION in Cakephp
- 20. CakePHP con Bootstrap (da Twitter)
- 21. Elementi inseriti in un elenco Java
- 22. Dati non inseriti nel database Sqlite in Android
- 23. Emissione di un collegamento ipertestuale da un controller in cakePHP
- 24. Recupero dei messaggi da postgres
- 25. Nascondi ID utente nella barra degli indirizzi
- 26. Recupero da dimenticare a .gitignore
- 27. Django: recupero di ID di molti campi molto velocemente
- 28. Recupero dei dati da JList
- 29. ListView Android con casella di controllo Eliminazione/recupero ID riga
- 30. Cakephp 3 NOT IN query
Grazie Sudhir, ho provato questo, ma la sua lanciando un errore Undefined property: AppModel: inserted_ids nel mio controller, quale può essere la ragione .. ?? – Vineet
@ vin.it rimuovere var prima $ inseted_ids – Ehtesham
@ehtesham: thanx ehtesham.i l'ha provato ma continua a lanciare lo stesso errore. altre possibilità ...? – Vineet