Невозможно обновить сущность, когда существует отношение

0

У меня есть сущность, представляющая пользователя в моей системе, и каждый пользователь связан с объектом комментариев (один-ко-многим), я добавил объект комментариев в последнее время, и теперь я заметил, что когда я обновляю пользовательский объект, а пользователь имеет комментарии Я получаю сообщение об ошибке, в то время как у пользователя все еще нет комментариев, все работает нормально. Мне нужен связанный объект только для получения количества комментариев, я пробовал несколько способов, но ничего не работает.

[2014-12-08 23:31:19] request.CRITICAL: Неотображается исключение PHP Symfony\Component\Form\Exception\StringCastException: "Метод" __toString() "не найден на объектах типа" FFS2013\CommentBundle\Entity\Comment "передается в поле выбора. Чтобы вместо этого использовать пользовательский getter, установите параметр" property "в желаемый путь свойства." в /Users/matan/www/FFS2013/vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Form/ChoiceList/EntityChoiceList.php строка 432 {"exception": "[object] (Symfony\Component\Form\Exception\StringCastException: A\"__ toString() \" метод не был найден в объектах типа \"FFS2013\CommentBundle\Entity\Comment \", переданных в поле выбора. Чтобы вместо этого использовать пользовательский getter, установите свойство\"свойство\"на желаемый путь свойства.

Я понимаю, что он говорит, что он пытался найти метод __toString, но я не думаю, что это моя настоящая проблема. Это способ настройки отношения к пользовательскому объекту:

@ORM\OneToMany(targetEntity="FFS2013\CommentBundle\Entity\Comment", mappedBy="user", fetch="EXTRA_LAZY")

Как я могу настроить свойство count в пользовательском объекте и что он будет игнорироваться при обновлении объекта?

Теги:
doctrine2

1 ответ

2

Вы добавили отношение "Комментарии" в качестве поля выбора в форме, поэтому вы должны реализовать метод __toString в классе комментариев для отображения комментариев в поле выбора (объект передается в строку, поэтому он должен иметь метод __toString). Или установите параметр свойства (в построителе форм) с другим полем, используемым для отображения в виджетах выбора.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню