Добавить данные в пагинатор (KnpPaginatorBundle, Symfony)

Я использую KnpPaginatorBundle.

Допустим, у меня есть что-то вроде этого:

$em = $this->getDoctrine()->getEntityManager();
$qb = $em->createQueryBuilder()
->select('p.id, p.name, p.description)
->from('My\Bundle\Entity\Post', 'p')
->where('p.unread is NULL')
$query = $qb->getQuery();
$posts = $query->getResult();

И мой пагинатор

$paginator  = $this->get('knp_paginator');
$posts = $paginator->paginate(
$posts,
$request->query->getInt('page', 1),
3
);

Все работает очень хорошо, но Я хотел бы добавить свои данные в $ posts по каждому.

Мой пример не работает:

foreach ($posts as $key => $value) {
$posts [$key]['filterPath'] = 'example';
}

Я получаю ошибку Notice: Indirect modification of overloaded element of Knp\Bundle\PaginatorBundle\Pagination\SlidingPagination has no effect

Как я могу решить это?
С уважением

3

Решение

попробуй что-нибудь подобное

foreach ($posts as $key => $value) {
$tab=$posts[$key];
$tab=['filterPath'] = 'example';
$posts['key']=$tab;
}

Насколько я помню, $ posts — это не обычный массив, и к нему нельзя получить прямой доступ

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]