Я использую cakePHP 1.26.
В PostsController у меня есть это:
$this->paginate=array('conditions'=>array('Reply.post_id'=>$id),'limit' => 1);
$w = $this->paginate($this->Post->Reply);
$this->set('views', $w);
И в view.ctp у меня есть это:
<table><tr><td>
<?php echo $paginator->numbers(); ?>
<?php
echo $paginator->prev('Previous', null, null);
echo $paginator->next(' Next', null, null);?>
</td></tr></table>
И когда я нажал ссылку «Далее», показывался неправильный URL:
http://localhost:8080/post/view/page:2
Правильный URL должен быть
http://localhost:8080/post/view/2/page:2
Идентификатор, ссылающийся на сообщение, отсутствует после / post / view /
Не могли бы вы помочь мне решить проблему, пожалуйста?
Я добавил это в view.ctp:
$ paginator-> options (array ('url' => $ this-> passArgs));
Теперь ссылки Next и Previous исправлены, но
числа между ссылками «Следующая» и «Предыдущая» по-прежнему неверны.
Вот то, что потом напоминает Предыдущая и Следующая ссылки:
http://localhost:8080/post/view/2/page:2
Но ссылки, представляющие числа 1 | 2 | 3 | 4 | 5, еще не изменены:
http://localhost:8080/post/view/page:2
Есть идеи?
Изменить причину:
OK,
Я изменил свой код и получил новый ответ на вопрос:
Вот код в моем файле view.ctp:
<?php
$paginator->options(array('url' => '../view/'.$postid));
echo $paginator->numbers();
echo $paginator->prev('Previous', null, null);
echo $paginator->next(' Next', null, null);
?>