div内の他のコントローラのインデックスページ(コントローラの名前はObavjestenjaController)をサイト/インデックスページ内で部分的にレンダリングします。私は、他のコントローラでactionIndexPartialを定義し、それは次のようになります。私のサイト/インデックスでページの変更時にYiiのrenderPartialインデックスビューがリダイレクトされる
public function actionIndexPartial()
{
$dataProvider=new CActiveDataProvider('Obavjestenja', array(
'pagination' => array('pageSize'=>3,),
));
$this->renderPartial('index',array(
'dataProvider'=>$dataProvider,
));
}
、私はこのdiv要素があります。
<div id="obavjestenjadiv">
<?php
Yii::app()->runController('Obavjestenja/indexPartial');
?>
</div>
をし、ページが必要なのdivに表示されます。何が失敗するかは、CListViewからのページスワッピングです。デフォルトでは、私は第2ページに変更するとobavjestenja/index & Obavjestenja_page = 2ページにリダイレクトしたいが、同じページ(サイト/インデックス)内にとどまり、div内のページを正しく変更したい。どうすればこれを達成できますか?
EDIT:デフォルトでAJAXが私をリダイレクトしていました。カスタムのCListViewウィジェットをそこに作成し、対応するModelからdataProviderを提供し、その結果を表示することで、サイト/インデックスのdivを編集しました。魅力的な作品。
サイト/インデックスDIV:
<?php
$dataProvider = new CActiveDataProvider('Obavjestenja', array(
'pagination' => array('pageSize'=>3,),
));
$this->widget('zii.widgets.CListView', array(
'dataProvider'=>$dataProvider,
'itemView'=>'//obavjestenja/_view',
));
?>
唯一のものは、それがページの最上部に私を返し、AJAXは、CListViewを更新したときに、あります。これを避けることはできますか?ありがとうございます。