diff --git a/laravel/database/eloquent/query.php b/laravel/database/eloquent/query.php index 250519a1..11eec542 100644 --- a/laravel/database/eloquent/query.php +++ b/laravel/database/eloquent/query.php @@ -112,7 +112,17 @@ public function hydrate($model, $results, $include = true) { $result = (array) $result; - $models[$result[$this->model->key()]] = new $class($result, true); + $new = new $class(array(), true); + + // We need to set the attributes manually in case the accessible property is + // set on the array which will prevent the mass assignemnt of attributes if + // we were to pass them in using the constructor or fill methods. + foreach ($result as $key => $value) + { + $new->$key = $value; + } + + $models[$result[$this->model->key()]] = $new; } if ($include and count($results) > 0)