yii框架搜索分页modle写法
控制器层
<?PHP
namespacefrontend\controllers;
header('content-type:text/html;charset=utf-8');
useYii;
useyii\base\InvalidParamException;
useyii\web\BadRequestHttpException;
useyii\web\Controller;
useyii\filters\VerbFilter;
useyii\filters\AccessControl;
usecommon\models\LoginForm;
usefrontend\models\PasswordResetRequestForm;
usefrontend\models\ResetPasswordForm;
usefrontend\models\SignupForm;
usefrontend\models\ContactForm;
usefrontend\models\Goods;//加载jidian表的model
useyii\data\Pagination;//yii框架中使用分页
usefrontend\web\myclass\QRcode;//加载生成二维码类
/**
*Sitecontroller
*/
classGoodsControllerextendsController
{
public$enableCsrfValidation=false;
//商品展示列表
publicfunctionactionGoodslist()
{
//接收过来搜索的条件
$w=yii::$app->request->get('goods_name');
//分页
$test=newGoods();//实例化model模型
$arr=$test->find()->where(['like','goods_name',"$w"]);//加上搜索的条件where
$pages=newPagination([
'totalCount'=>$arr->count(),
'pageSize'=>4//每页显示条数
]);
$models=$arr->offset($pages->offset)
->limit($pages->limit)
->all();
return$this->render('goodslist',[//前台的页面
'data'=>$models,
'pages'=>$pages,
'where'=>$w//把搜索的条件显示到前面
]);
}
}
视图层
<?php
useyii\widgets\ActiveForm;
useyii\helpers\Url;
useyii\helpers\Html;
useyii\widgets\LinkPager;
?>
<!DOCTYPEhtml>
<htmllang="en">
<head>
<metacharset="UTF-8">
<title>商品的展示列表</title>
</head>
<body>
<?php
$form=ActiveForm::begin([
'action'=>Url::toRoute(['goods/goodslist']),
'method'=>'get',
]);
echo'搜索'," ",Html::input('text','goods_name',$where);
//echo'年龄'," ",Html::input('text','age',$where['age']);
echoHtml::submitButton('搜索');
ActiveForm::end();
?>
<table>
<?phpforeach($dataas$key=>$val):?>
<tr>
<td>商品名称是:<?=$val['goods_name']?></td>
</tr>
<?phpendforeach?>
</table>
</body>
</html>
<?php
//useyii\widgets\LinkPager;
echoLinkPager::widget([
'pagination'=>$pages,
'nextPageLabel'=>'下一页',
'prevPageLabel'=>'上一页',
]);
?>
model层
<?php
namespacefrontend\models;
useYii;
classGoodsextends\yii\db\ActiveRecord
{
}
以上所述是小编给大家介绍的yii框架搜索分页modle写法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!