2017-09-12 10 views
0

私はsymfony 2.3プロジェクトでKnp paginatorを使用しています。このプロジェクトは私には新しく、コントローラは少し奇妙です。symfony 2.3でKnp paginatorを奇妙なコントローラで使用する

私はそれをインストールしようとしていますが、まだ機能していないことがブロックされています。

私はこのtutorial actually

、ここでは使用して私のコントローラ

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; 

そして私は私をロードしようこのエラーが表示されるページ:

enter image description here

+0

あなたの名前空間を表示することができますし、クラスを使用して? –

+0

こんにちは@ImanaliMamadiev私は名前空間とクラスで投稿を更新しました –

答えて

1

あなたはResultsAction呼び出しにリクエスト引数を追加するのを忘れました。

宣言は、4つの引数が含まれています

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

コールは3が含まれています

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

ありがとうございます! :) –

2

あなたがアクションを呼び出すときRequestクラスに合格する必要があります。

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

答えに感謝しますが、私はsvgrafov 1を受け入れました。しかし、助けてくれてありがとう –

関連する問題