اون آبجکتی که ساختین رو میتونید به عنوان پارامتر به یک مدل دیگه بفرستید.
من یک مثال با
try/catch
میزنم:
در مدل فعلی میتونید داشته باشید:
[/right][/size]
$transaction=Yii::$app->db->beginTransaction($isolationlevel);
try{
$anotherModel = new AnotherModel();
$anotherModel->doSomethingWithTransaction($transaction);
}catch(Exception $e){
$transaction->rollback();
//show an error
}
[size="4"][right]
در مدل دیگه ای دارید[/right][/size]
class AnotherModel extends \yii\db\ActiveRecord
{
public function doSomethingWithTransaction($transaction)
{
try{
//try something
$transaction->commit();
}catch(Exception $e){
//show an error or throw a new exception to make the parent catch it
$transaction->rollback();
}
}
[size="4"][right]نحوه مدیریت
try/catch
بستگی به نیاز شما داره ولی همونطور که میبینید میتونید به صورت تو در تو