ZF2: cómo usar Hydrator / exchangeArray () para rellenar un objeto anidado

Tengo un objeto con valores que están almacenados en mi base de datos. Mi objeto también contiene otro objeto que se almacena en la base de datos utilizando solo su ID (clave externa).

http://framework.zend.com/manual/2.0/en/modules/zend.stdlib.hydrator.html

Antes deHydrator/exchangeArray En la funcionalidad de ZF2, usaría un Asignador para tomar todo lo que necesita para crear el objeto. Ahora estoy tratando de eliminar esta capa extra simplemente usandoHydration/exchangeArray para rellenar mis objetos pero estoy un poco atascado al crear el objeto anidado.

¿Debería mi entidad tener la tabla del objeto interno inyectada en ella para poder crearla si la ID de la misma se pasa a mi 'exchangeArray'?

Aquí hay entidades de ejemplo como ejemplo.

// Village
id, name, position, square_id

// Map Square
id, name, type

Al enviar square_id a la función exchangeArray () de mi pueblo. Obtendría la tabla de mapas y usaría un hidratador para arrastrar el cuadrado usando la ID que tengo.

No parece correcto tener instancias de asignador dentro de mi entidad, ya que pensé que deberían desconectarse de cualquier cosa, pero ¿son sus propios parámetros y funcionalidad específicos de la entidad?

Respuestas a la pregunta(1)

Su respuesta a la pregunta