1
0
mirror of synced 2025-02-06 23:39:25 +03:00

Fix bug with hydrators

This commit is contained in:
Michaël Gallego 2014-02-09 11:56:51 +01:00
parent 6cbd643d4b
commit a45ecb5733

View File

@ -581,7 +581,10 @@ class ManyToManyPersister extends AbstractCollectionPersister
$joinTable = $this->quoteStrategy->getJoinTableName($mapping, $ownerMetadata, $this->platform); $joinTable = $this->quoteStrategy->getJoinTableName($mapping, $ownerMetadata, $this->platform);
$onConditions = $this->getOnConditionSQL($mapping); $onConditions = $this->getOnConditionSQL($mapping);
$sql = 'SELECT * FROM ' . $tableName . ' te' $rsm = new Query\ResultSetMappingBuilder($this->em);
$rsm->addRootEntityFromClassMetadata($mapping['targetEntity'], 'te');
$sql = 'SELECT ' . $rsm->generateSelectClause() . ' FROM ' . $tableName . ' te'
. ' JOIN ' . $joinTable . ' t ON' . ' JOIN ' . $joinTable . ' t ON'
. implode(' AND ', $onConditions) . implode(' AND ', $onConditions)
. ' WHERE ' . implode(' AND ', $whereClauses); . ' WHERE ' . implode(' AND ', $whereClauses);
@ -589,9 +592,6 @@ class ManyToManyPersister extends AbstractCollectionPersister
$stmt = $this->conn->executeQuery($sql, $params); $stmt = $this->conn->executeQuery($sql, $params);
$hydrator = $this->em->newHydrator(Query::HYDRATE_OBJECT); $hydrator = $this->em->newHydrator(Query::HYDRATE_OBJECT);
$rsm = new Query\ResultSetMapping();
$rsm->addEntityResult($mapping['targetEntity'], 'r');
return $hydrator->hydrateAll($stmt, $rsm); return $hydrator->hydrateAll($stmt, $rsm);
} }