En Doctrine 1.2, es posible configurar Key Mapping para una tabla donde Doctrine_Collection
objetos creados por esa tabla llenarán claves de una columna particular en cada registro en la colección.Configuración del atributo de asignación de clave Doctrine_Collection en schema.yml
Un ejemplo de la documentación ligada arriba:
Es posible que desee asignar la columna de nombre:
// test.php // ... $userTable = Doctrine_Core::getTable('User'); $userTable->setAttribute(Doctrine_Core::ATTR_COLL_KEY, 'username');
Ahora colecciones de usuarios utilizarán los valores de la columna nombre como índices de elementos:
// test.php // ... $users = $userTable->findAll(); foreach($users as $username => $user) { echo $username . ' - ' . $user->created_at . "\n"; }
¿Hay alguna manera de configurar esto en un sc archivo hema.yml?
Gracias por las sugerencias; ¡fueron un excelente punto de partida! Pude hacerlo funcionar al especificarlo como un atributo en lugar de una opción (ver mi respuesta para más información). –
@Phoenix: no sabía que podría establecer atributos en el esquema, ¡gran trabajo! – greg0ire