/**
  * @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;
 }