Я столкнулся с ошибкой Неопределенный метод 'findAllCtrs'. Имя метода должно начинаться с findBy или findOneBy!Symfony2, похоже, не распознает мой класс репозитория
Я пробовал все другие решения на StackOverflow относительно этой проблемы. Я очистил кеш, очистил кеш метаданных, проверил пространства имен и объекты папок, но все равно не исправил.
Вот моя сущность:
namespace CFS\Bundle\Entity;
use Doctrine\ORM\Mapping as ORM;
/**
* Ref
*
* @ORM\Table(name="ref", indexes={@ORM\Index(name="refno", columns={"refno"}), @ORM\Index(name="ctrno", columns={"ctrno"})})
* @ORM\Entity(repositoryClass="CFS\Bundle\Entity\RefRepository")
*/
class Ref
{
Мой репозиторий Класс:
namespace CFS\Bundle\Entity;
use Doctrine\ORM\EntityRepository;
class RefRepository extends EntityRepository
{
public function findAllCtrs()
{
$query = $this->getEntityManager()
->createQuery('
SELECT
r.refno, r.ctrno
FROM
CFSBundle:Ref r
ORDER BY
r.refno DESC
');
try {
return $query->getResult();
} catch(\Doctrine\ORM\NoResultException $e) {
return null;
}
}
}
И я пытался вызвать метод в мой контроллер с:
$em = $this->getDoctrine()->getManager();
$containers = $em->getRepository('CFSBundle:Ref')
->findAllCtrs();
Я заметил d, что при генерации объектов в командной строке php app/console doctrine:generate:entities CFSBundle
он не распознает мой файл RefRepository.php. Что еще я мог пропустить?
Любой шанс, что у вас есть файл \ config \ doctrine \ Ref.orm.yml \ \ \ \ \ \ \ \ \ – Cerad
@ Керад, да, что я должен искать? – user3757305
@Cerad, это на самом деле xml вместо .yml – user3757305