Yii2同时搜索多个字段
来源:互联网 发布:深入浅出数据分析图书 编辑:程序博客网 时间:2024/04/29 11:28
Yii2同时搜索多个字段
Yii2中搜索字段是用的andFilterWhere这个方法,用它可以搜索一个一段。
如果是搜索多个字段的话 ,比如搜索文章标题和文章内容是是否包含需要搜索的关键词,因为他们两个的关系是or,所以就要用到orFilterWhere这个方法
下面就是全部的代码
- public function actionIndex()
- {
- $key =Yii::$app->request->post("key");
- $query = Post::find()->joinWith('cate');
- $post = $query->orderBy(['post.id' => SORT_DESC])->asArray()->where(['post.status' => 1]);
- if($key){
- $post->andFilterWhere(['like', 'post.title', $key])
- ->orFilterWhere(['like', 'post.content', $key]);
- }
- $pages = new Pagination([
- 'totalCount' => $post->count(),
- 'defaultPageSize' => 10
- ]);
- $model = $post->offset($pages->offset)->limit($pages->limit)->all();
- return $this->render('index', [
- 'model' => $model,
- 'pages' => $pages,
- ]);
- }
可以看到sql语句如下
select count(*) from `post` left join `category` on `post`.`cate_id`=`category`.`id` where ((`post`.`status`=1) and (`post`.`title` like '%key%')) or (`post`.`content` like '%key%') order by `post`.`id` desc
select `post`.* from `post` left join `category` on `post`.`cate_id`=`category`.`id` where ((`post`.`status`=1) and (`post`.`title` like '%key%')) or (`post`.`content` like '%key%') order by `post`.`id` desc limit 10
0 0
- Yii2同时搜索多个字段
- 多个字段同时唯一
- yii2.0数据库迁移 [多个数据库同时同步数据]
- oracle同时添加多个字段-案例
- hibernate hql 同时更新多个字段
- 数据库同时更新多个字段
- order by多个字段同时排序
- 多个字段同时去重
- Lucene同时搜索多个索引
- Yii2让关联字段支持搜索功能
- yii2 多条件搜索
- oracle 同时更新(update)多个字段多个值
- oracle 同时更新(update)多个字段多个值
- oracle 同时更新(update)多个字段多个值
- 一个字段同时满足多个条件的查询
- oracle 同时更新(update)多个字段多个值
- oracle 同时更新(update)多个字段多个值
- mysql对数据库多个字段同时进行模糊查询
- 一些关于JavaScript的七零八落
- spring mvc整合ireport终极解结方案,解决HTML图片不显示的问题
- 【java基础】——java概述
- Yii2让关联字段支持搜索功能
- 【code】flex_抛自定义事件
- Yii2同时搜索多个字段
- iOS开发Delegate,Notification,Block使用心得
- 题解 cf div2 193B
- C++继承、虚继承、虚函数类的大小问题
- 冒泡排序
- Java编写图片上传服务器
- 优化WebView nativeOnDraw failed; clearing to background color及其根本原因
- 刺激的摩托飞艇 区间型动态规划
- [4]_文档那么多,我该何去何从