findAll symfony2 без идентификатора из БД

У меня проблема с findAll в symfony 2

У меня есть объект Picture и объект Collection. У меня также есть ссылка ManyToOne на целевую коллекцию изображений.

В моем контроллере у меня есть это:

$em = $this->getDoctrine()->getManager();

    $entities = $em->getRepository('AppPictureBundle:Collection')->findAll();

    return array(
        'entities' => $entities,
    );

и у меня эта ошибка

Во время рендеринга шаблона возникло исключение ("Параметр "id" для маршрута "picture_show" должен соответствовать "[^/]++" ("" задано) для создания соответствующего URL-адреса") в C:\wamp \www\band\src\App\PictureBundle/Resources/views/Picture/index.html.twig в строке 21.

когда я удаляю ссылки в индексном файле, которые не работают (потому что у них нет идентификатора), моя страница создается правильно со всеми полями из моей базы данных, кроме идентификаторов (которые также должны быть напечатаны)

Мой контроллер тот же, что и у doctrine:generate:crud

Я сделал то же самое для своей коллекции сущностей, и она отлично работает, поэтому я не понимаю, почему у меня есть все поля, кроме идентификатора.

На всякий случай: https://github.com/KhalidSookia/band


person khalid sookia    schedule 12.09.2013    source источник


Ответы (1)


По какой-то причине у одного из ваших объектов нет идентификатора, и требуется создать URL-адрес с использованием маршрута picture_show.

После быстрого сканирования кода я не могу найти причину отсутствия идентификатора. Это может иметь какое-то отношение к иерархии наследования, в которой участвует Picture. Проверьте базу данных, чтобы убедиться, что действительно есть некоторые отсутствующие идентификаторы.

person Elnur Abdurrakhimov    schedule 12.09.2013