2014-05-02 17:16:30 4009次浏览 1条回答 0 悬赏 0 金钱

我第一次用yii框架,下载了blog这个例子,但是里面一个很奇怪的问题.不知道怎么回事:

blog列表页,有个Post_page参数来传递页数,然后我看了PostController文件,里面的这段程序是使用CActiveDataProvider来读取数据,但是在new这个CActiveDataProvider类的时候,并没有向里面传递Post_page参数;

然后我查看了CActiveDataProvider返回的数据,已经是分页好的数据了.没有向里面传递分页的参数,那么CActiveDataProvider是怎么分页的呢?

 

  • 回答于 2014-05-20 17:49 举报

    看不到截图,虽然年代久远,但也回复一下吧,我也刚刚做到这步,但发现其实有传值,以postcontroller为例:

    public function actionIndex()
    {
    $criteria=new CDbCriteria(array(
    'condition'=>'status='.Post::STATUS_PUBLISHED,
    'order'=>'update_time DESC',
    'with'=>'commentCount', //这里把全部日志的总数传递过去。
    ));
    if(isset($_GET['tag']))
    $criteria->addSearchCondition('tags',$_GET['tag']);

    $dataProvider=new CActiveDataProvider('Post', array(
    'pagination'=>array(
    'pageSize'=>6,//设置每个条数
    ),
    'criteria'=>$criteria,
    ));

    $this->render('index',array(
    'dataProvider'=>$dataProvider,
    ));
    }

    知道总数和分页条数就可以进行分页了

您需要登录后才可以回答。登录 | 立即注册
songshuai
助理

songshuai

注册时间:2014-05-02
最后登录:2019-10-08
在线时长:11小时20分
  • 粉丝0
  • 金钱15
  • 威望0
  • 积分125

热门问题