У меня есть DQL-запрос, который просматривает все сообщения, показывает их комментарии и т. Д ...:
public function getAllPosts(User $user){
$qb = $this->createQueryBuilder('p');
$qb->select('p, postPhotos,postVideos, comments')
->leftJoin('p.photos', 'postPhotos')
->leftJoin('p.videos', 'postVideos')
->leftJoin('p.comments', 'comments')'
и т.д ...
Затем я должен просмотреть сообщения и выполнить статистическую функцию для подсчета количества комментариев на сообщение.
Таким образом, для выполнения этой Доктрины требуется, чтобы вы объявили поле внутри сущности Comment, я назову его numComments, а затем напишу функцию хранилища, чтобы установить его значение в CommentRepository.php:
Комментарий к классу
{
/**
* @ORM\Id()
* @ORM\GeneratedValue()
* @ORM\Column(type="integer")
*/
private $id;
/**
* @var integer
*
* @ORM\Column(name="numComments", type="integer")
*/
private $numComments;
Как только я поместил это поле numComments в класс комментариев, Doctrine по ошибке считает, что это поле является частью моего исходного пост-запроса (вверху), и выдает мне ошибку: «Столбец не найден: 1054 Неизвестный столбец» c3_.numComments 'в' списке полей ''
Должен ли я добавить новую миграцию и добавить этот столбец «numComments» в фактическую таблицу базы данных комментариев?
Почему Доктрина была настолько трудной и заставляла бы вас так поступать?