From 7d1b9556125f2e6dd3c18aca27ea5d0f4c834d72 Mon Sep 17 00:00:00 2001 From: George Hindle Date: Mon, 16 Feb 2015 13:52:54 +0000 Subject: [PATCH] DoctrinePresenceVerifier->getCount() returning null When using the unique validation rule `DoctrinePresenceVerifier->getCount()` was returning null because the scalar result wasn't been added to the result set. Also noticed that an error would occur in `getMultiCount()` as the `count()` method isn't available on `ResultSetMapping`. --- src/Validation/DoctrinePresenceVerifier.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/Validation/DoctrinePresenceVerifier.php b/src/Validation/DoctrinePresenceVerifier.php index 820f58d..b7bfbf1 100644 --- a/src/Validation/DoctrinePresenceVerifier.php +++ b/src/Validation/DoctrinePresenceVerifier.php @@ -75,7 +75,7 @@ public function getMultiCount($collection, $column, array $values, array $extra $query->setParameter($key + 2, $extraValue); } - return $query->count(); + return $query->getSingleScalarResult(); } /** @@ -87,6 +87,7 @@ public function getMultiCount($collection, $column, array $values, array $extra private function createQueryFrom(array $queryParts = []) { $rsm = new ResultSetMapping(); + $rsm->addScalarResult('COUNT(*)', 'c'); return $this->entityManager->createNativeQuery(implode(' ', $queryParts), $rsm); }