so come farlo in Zend FrameworkMagento transazioni di database multipli in un'unica commettono
$db->beginTransaction();
try {
$db->query(...);
$db->query(...);
$db->query(...);
.
.
.
$db->commit();
} catch (Exception $e) {
$db->rollBack();
}
ma io voglio farlo utilizzando il modello Magento, qualcosa come
$db->beginTransaction();
try {
$modelOne = Mage::getModel('modulename/table1');
$modelTwo = Mage::getModel('modulename/table2');
$modelThree = Mage::getModel('modulename/table3');
$db->query($modelOne);
$db->query($modelTwo);
$db->query($modelThree);
.
.
.
$db->commit();
} catch (Exception $e) {
$db->rollBack();
}
Se qualcuno di loro non è riuscito per salvare allora tutto dovrebbe essere rotolato indietro
Grazie
Grazie a ToxaBse, puoi anche dire cosa succede se voglio salvare 'nomemodulo/tabella1' e aggiornare 'nomocodice/tabella2' ed eliminare 'nomocompatibile/tabella3', come potrò conseguirlo? – Ahmed
Non ho usato salvare ed eliminare azioni in una transazione, ma provo ad aggiungere la riga successiva: $ transaction-> addCommitCallback (array (Mage :: getModel ('nomocodice/tabella2'), 'cancella')); – ToxaBes