2

次の例外がスローされます: Zend\View\Renderer\PhpRenderer::render: Unable to render template "./opt/lampp/htdocs/guest-book/module/Records/view/records/records/paginator"; リゾルバーはファイルに解決できませんでした。パスをさまざまな方法でさまざまなディレクトリに設定しようとしましたが、まだ機能しません

コントローラ:

class RecordsController extends AbstractActionController
{
    protected $recordsTable;
    public function indexAction()
    {
        $field = (string) $this->params()->fromRoute('field', 'date');
        $order = (string) $this->params()->fromRoute('order', 'desc');
        $array = array('records' =>$this->getRecordsTable()->getByOrder($field, $order),);
        $paginator = new Paginator\Paginator(new Paginator\Adapter\ArrayAdapter($array));
        $paginator->setCurrentPageNumber($this->params()->fromRoute('page', 1));
        $paginator->setPageRange(3);
        $paginator->setDefaultScrollingStyle('Sliding');
        print_r($paginator);
        $pag = new Helper\PaginationControl();
        $pag::setDefaultViewPartial('opt/lampp/htdocs/guest-book/module/Records/view/records/records/paginator.phtml', 'default');
        $vm = new ViewModel($array);
        $vm->setVariable('paginator', $paginator);
        return $vm;
    }

レコード テーブル:

class RecordsTable
{
    protected $tableGateway;

    public function __construct(TableGateway $tableGateway)
    {
        $this->tableGateway = $tableGateway;
    }

    public function getByOrder($field, $order)
    {
        $this->field = $field;
        $this->order = $order;
        $resultSet = $this->tableGateway->select(function (Select $select) {
        $select->order($this->field.' '.$this->order);        
        });
        return $resultSet;      
    }

ビューで:

<?php if (count($this->paginator)): ?>
<ul>
<?php foreach ($this->paginator as $item): ?>

あるいは単に:

<? echo $this->paginator;?>

まだ問題があります。

ありがとうございます!

4

1 に答える 1

2

コントローラー内でビューヘルパーを使用しているのはなぜですか? それを取り除く..

$pag = new Helper\PaginationControl();
$pag::setDefaultViewPartial('opt/lampp/htdocs/guest-book/module/Records/view/records/records/paginator.phtml', 'default');

テンプレートファイル内で適切に使用してください:

<?php echo $this->paginationControl($paginatior, 'Sliding', 'records/records/paginator.phtml')  ?>
于 2013-03-06T09:47:10.543 に答える