Commit: 7e696b5c7fb9b7c8af0baeb41adfed17fe1f5148

Author: Nate Abele | Date: 2010-08-18 13:08:34 -0400
Adding explicit type-casting for array keys in `\data\Model::find('list')`.
diff --git a/libraries/lithium/data/Model.php b/libraries/lithium/data/Model.php index ce39393..2e80e4f 100644 --- a/libraries/lithium/data/Model.php +++ b/libraries/lithium/data/Model.php @@ -959,13 +959,12 @@ class Model extends \lithium\core\StaticObject { 'list' => function($self, $params, $chain) { $result = array(); $meta = $self::meta(); + $name = $meta['key']; - array_map( - function($entity) use (&$result, $meta) { - $result[$entity[$meta['key']]] = $entity[$meta['title']]; - }, - $chain->next($self, $params, $chain)->data() - ); + foreach ($chain->next($self, $params, $chain) as $entity) { + $key = $entity->{$name}; + $result[is_scalar($key) ? $key : (string) $key] = $entity->{$meta['title']}; + } return $result; }, 'count' => function($self, $params, $chain) use ($_query) {