private function processUpdate(AbstractModel $model) { $model->callback('onUpdate'); $model_props = $model->toArray(); $table_name = $model->getTableName(); $new_data = array(); $primaryKey = $model->getPrimaryKey(); foreach ($model_props as $key => $value) { if (is_object($value) || is_array($value)) { continue; } if ($key !== $primaryKey && $key !== 'childs') { if ($value == 'CURRENT_TIMESTAMP' || $value == 'NOW()') { $new_data[] = "`{$key}`={$value}"; } else { $new_data[] = "`{$key}`='{$value}'"; } } } if (count($new_data) != 0) { $new_data = implode(', ', $new_data); $id = $model->getId(); $query = "UPDATE {$table_name} SET {$new_data} WHERE `{$primaryKey}`='{$id}'"; $this->dump($query); return $this->db->exec($query); } else { return false; } }