ManaPHP\Mvc\Model::_doLowInsert PHP Метод

_doLowInsert() защищенный Метод

Sends a pre-build INSERT SQL statement to the relational database system
protected _doLowInsert ( ) : void
Результат void
    protected function _doLowInsert()
    {
        $columnValues = [];
        foreach ($this->modelsMetadata->getAttributes($this) as $attributeField) {
            if ($this->{$attributeField} !== null) {
                $columnValues[$attributeField] = $this->{$attributeField};
            }
        }
        if (count($columnValues) === 0) {
            throw new ModelException('`:model` model is unable to insert without data', ['model' => get_class($this)]);
        }
        $connection = $this->getWriteConnection();
        $connection->insert($this->getSource(), $columnValues);
        $autoIncrementAttribute = $this->modelsMetadata->getAutoIncrementAttribute($this);
        if ($autoIncrementAttribute !== null) {
            $this->{$autoIncrementAttribute} = $connection->lastInsertId();
        }
        $this->_snapshot = $this->toArray();
    }