/** * @param Definition $definition * @return mixed * @throws ValidationError */ private function saveModel(Definition $definition) { $definition->validate(); $fields = $definition->valuesToArray(); $model = $this->getModel(); foreach ($fields as $column => $value) { $model->{$column} = $value; } $model->save(); return $model; }