牛骨文教育服务平台(让学习变的简单)
博文笔记

yii框架搜索后分页

创建时间:2016-12-21 投稿人: 浏览次数:142

控制器里这样写,Shop必须是gii生成的model。

use appmodelsShop;

use yiidataPagination; 

public function actionShow(){

        //$search = Yii::$app->request->get("search");
        //$bid = Yii::$app->request->get("bid");
        //$tid = Yii::$app->request->get("tid");

        //把上面的这三个变量放进去就可以根据传过来的值多条件搜索分页了

        $query = Shop::find()->where("bid in (1,3) and tid in(1,3) and sname like "%苹果%"");   //where里可以直接写成数组格式的条件也可以写成原生的拼接语句
        $countQuery = clone $query;
        $pages = new Pagination(["totalCount" => $countQuery->count(),"pagesize"=>3]);
        $models = $query->offset($pages->offset)
            ->limit($pages->limit)
            ->all();

            // var_dump($models);
        return $this->render("show",[
             "models" => $models,
             "pages" => $pages,
        ]);

    }

视图层show.php里这样写

<?php use yiiwidgetsLinkPager; ?>//一定要将小部件引到视图层
    <table>
        <?php foreach ($models as $key => $value): ?>
            <tr>
                <td><?php echo $value["bid"] ?></td>
                <td><?php echo $value["tid"] ?></td>
                <td><?php echo $value["sname"] ?></td>
            </tr>        
        <?php endforeach ?>        
    </table>
    <?php  //显示分页
    echo LinkPager::widget([
    "pagination" => $pages,
]);?>


声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。