@Tarakkolya

Как работать с пользовательскими репозиториями Doctrine 2?

Есть сущность Place, добавляю пользовательский репозиторий, как описано здесь 8.8.7: odiszapc.ru/doctrine/working-with-objects/#881

и при вызове метода этого репозитория выдает ошибку о том, что такого метода нет. Может, я что-то не так прописал или куда-то еще запись добавить нужно? Использую ZF2.

Код Entity\Place:
namespace Application\Entity;

use Doctrine\ORM\EntityRepository;
use Doctrine\ORM\Mapping as ORM;

/** 
 * Application\Entity\Place 
 * @ORM\Entity(repositoryClass="Application\Entity\PlaceRepository")
 * 
 */

/** @ORM\Entity */
class Place {
   /***тут поля Place***/
}



class PlaceRepository extends EntityRepository{
    public function getAll(){
        return $this->_em->createQuery('SELECT u FROM Application\Entity\Place u')->getResult();
    }
}


Код в контроллере:
$places=$em->getRepository('Application\Entity\Place')->getAll();
  • Вопрос задан
  • 2569 просмотров
Решения вопроса 1
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
Ну так его нету в phpdoc перед классом. Попробуйте так:

/** 
 * Application\Entity\Place 
 * @ORM\Entity(repositoryClass="\Application\Entity\PlaceRepository")
 */
class Place {
   /***тут поля Place***/
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы