Revert "改名"
This reverts commit fdf58326
This commit is contained in:
@@ -112,18 +112,29 @@ class Model extends Base\Model
|
|||||||
if (empty($attributes)) {
|
if (empty($attributes)) {
|
||||||
return $logger->addError(FIND_OR_CREATE_MESSAGE, 'mysql');
|
return $logger->addError(FIND_OR_CREATE_MESSAGE, 'mysql');
|
||||||
}
|
}
|
||||||
|
$model = new static();
|
||||||
|
|
||||||
|
/** @var Connection $database */
|
||||||
|
$database = Kiri::app()->get($model->getConnection());
|
||||||
|
$database->beginTransaction();
|
||||||
try {
|
try {
|
||||||
/** @var static $select */
|
/** @var static $select */
|
||||||
$select = static::query()->where($condition)->first();
|
$select = static::query()->where($condition)->first();
|
||||||
if (empty($select)) {
|
if (empty($select)) {
|
||||||
$select = new static();
|
$select = $model;
|
||||||
$select->attributes = $attributes;
|
$select->attributes = $attributes;
|
||||||
if (!$select->save()) {
|
if (!$select->save()) {
|
||||||
throw new Exception($select->getLastError());
|
throw new Exception($select->getLastError());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$database->commit();
|
||||||
|
|
||||||
return $select;
|
return $select;
|
||||||
} catch (\Throwable $throwable) {
|
} catch (\Throwable $throwable) {
|
||||||
|
|
||||||
|
$database->rollback();
|
||||||
|
|
||||||
return $logger->addError($throwable->getMessage(), 'mysql');
|
return $logger->addError($throwable->getMessage(), 'mysql');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user