Don't use mass assignment in hydrator.

This commit is contained in:
Taylor Otwell 2012-03-26 16:36:23 -05:00
parent 55669ee0ae
commit 5a59c5f317
1 changed files with 11 additions and 1 deletions

View File

@ -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)