This commit is contained in:
2021-12-25 23:17:15 -03:00
parent bbee033a8a
commit 3580738273
23 changed files with 755 additions and 81 deletions

View File

@ -90,7 +90,7 @@ abstract class Model extends BaseModel implements ModelInterface {
protected static function parseInput($input): array {
return array_intersect_key((array) $input, array_combine(static::$fields, static::$fields));
}
public static function add(ModelFactory $factory, $input): ?ModelInterface {
public static function add(ModelFactory $factory, $input): bool|ModelInterface {
$data = static::parseInput($input);
$class = get_called_class();
if (method_exists($class, 'find')) {
@ -103,7 +103,7 @@ abstract class Model extends BaseModel implements ModelInterface {
$where = array_values($where);
$obj = $factory->find($class)->where($where)->one();
}
if ($obj === null) {
if ($obj === false or $obj === null) {
$obj = $factory->create($class, $data);
}
return $obj;