Model类saveall方法支持事务

This commit is contained in:
thinkphp
2016-06-18 10:37:22 +08:00
parent 933a61467b
commit 59a2fce286
2 changed files with 12 additions and 4 deletions

View File

@@ -636,10 +636,18 @@ abstract class Model implements \JsonSerializable, \ArrayAccess
public function saveAll($dataSet)
{
$result = 0;
foreach ($dataSet as $data) {
$result = $this->isUpdate(false)->save($data, [], false);
$db = $this->db();
$db->startTrans();
try {
foreach ($dataSet as $data) {
$result = $this->isUpdate(false)->save($data, [], false);
}
$db->commit();
return $result;
} catch (\Exception $e) {
$db->rollback();
return false;
}
return $result;
}
/**

View File

@@ -248,7 +248,7 @@ class Merge extends Model
}
$db->commit();
return $result;
} catch (\PDOException $e) {
} catch (\Exception $e) {
$db->rollback();
return false;
}