Использование Knp paginator в Symfony 2.3 со странным контроллером

Я использую Knp paginator в проекте symfony 2.3, и этот проект для меня новый, поэтому использование контроллеров немного странно.

Я пытаюсь установить его, но есть вещи, которые все еще мешают его функционированию.

Я следую этому уроку на самом деле

и вот мой код в моем контроллере

private function resultsAction(Request $request, User $user, $type, $archive)
{
     $em = $this->getDoctrine()->getManager();

     $results = $em->getRepository("randomRepo")->findByTypeAndPro($type, $user, $archive);

     /**
      * @var $paginator \Knp\Component\Pager\Paginator
      */
     $paginator = $this->get('knp_paginator');
     $results = $paginator->paginate(
         $results,
         $request->query->getInt('page',1),
         $request->query->getInt('limit',5)
     );


     return array("results" => $results, "archive" => $archive);
}

public function offerAction(User $user, $archive = false)
{
     return $this->resultsAction($user, Operation::OFFER, $archive);
}

Мое пространство имен и класс, используя:

namespace ST\BackofficeBundle\Controller;

use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Template;
use ST\UserBundle\Entity\Operation;
use ST\UserBundle\Entity\User;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\HttpFoundation\Request;

И поэтому, когда я пытаюсь загрузить свою страницу, я получаю эту ошибку:

2 ответа

Решение

Вы забыли добавить аргумент запроса в вызов ResultsAction.

Декларация содержит 4 аргумента:

resultsAction(Request $request, User $user, $type, $archive)

Звонок содержит 3:

public function offerAction(User $user, $archive = false)
{
    return $this->resultsAction($user, Operation::OFFER, $archive);
}

Вы должны передать класс Request, когда вызываете action:

public function offerAction(Request $request, User $user, $archive = false)
{
    return $this->resultsAction($request, $user, Operation::OFFER, $archive);
}
Другие вопросы по тегам