yii框架搜索分页modle怎么写

发布时间:2021-08-30 14:53:33 作者:小新
来源:亿速云 阅读:77

这篇文章主要为大家展示了“yii框架搜索分页modle怎么写”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“yii框架搜索分页modle怎么写”这篇文章吧。

控制器层

<?PHP
namespace frontend\controllers;
header('content-type:text/html;charset=utf-8');
use Yii;
use yii\base\InvalidParamException;
use yii\web\BadRequestHttpException;
use yii\web\Controller;
use yii\filters\VerbFilter;
use yii\filters\AccessControl;
use common\models\LoginForm;
use frontend\models\PasswordResetRequestForm;
use frontend\models\ResetPasswordForm;
use frontend\models\SignupForm;
use frontend\models\ContactForm;
use frontend\models\Goods; //加载jidian 表的model
use yii\data\Pagination; //yii框架中使用分页
use frontend\web\myclass\QRcode;//加载生成二维码类
/**
 * Site controller
 */
class GoodsController extends Controller 
{
  public $enableCsrfValidation = false;
  //商品展示列表
  public function actionGoodslist()
  {
  //接收过来搜索的条件
  $w=yii::$app->request->get('goods_name');
  //分页
  $test=new Goods();  //实例化model模型
  $arr=$test->find()->where(['like','goods_name',"$w"]); //加上搜索的条件where
  $pages = new Pagination([
    '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
use yii\widgets\ActiveForm;
use yii\helpers\Url;
use yii\helpers\Html;
use yii\widgets\LinkPager;
?>
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>商品的展示列表</title>
</head>
<body>
<?php
$form=ActiveForm::begin([
  'action'=>Url::toRoute(['goods/goodslist']),
  'method'=>'get',
]);
echo '搜索',"&nbsp",Html::input('text','goods_name',$where);
// echo '年龄',"&nbsp",Html::input('text','age',$where['age']);
echo Html::submitButton('搜索');
ActiveForm::end();
?>
  <table>
  <?php foreach ($data as $key => $val): ?>
    <tr>
      <td>商品名称是:<?= $val['goods_name']?></td>
    </tr>
  <?php endforeach ?>
  </table>
</body>
</html>
<?php
// use yii\widgets\LinkPager;
echo LinkPager::widget([
  'pagination' => $pages,
  'nextPageLabel' => '下一页', 
  'prevPageLabel' => '上一页', 
]);
?>

model层

<?php
namespace frontend\models;
use Yii;
class Goods extends \yii\db\ActiveRecord
{
}

以上是“yii框架搜索分页modle怎么写”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

推荐阅读:
  1. jstl 写的分页
  2. yii框架是哪个语言写的

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

yii

上一篇:YII Framework框架之缓存的示例分析

下一篇:Yii2如何增加验证码

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》