前言
最近在学习yii2.0,在使用yii2.0过程中遇到一些问题,现将查询搜索分页的方法整理如下,分享出来供大家参考学习,话不多说,来一起看看详细的介绍:
主表:{{%article}}
关联表:{{%article_class}}
方法如下
1、使用gii创建CRUD和search不详述
3、在ArticleSearch中添加的查询和关联内容,代码#注释部分
关联查询4:使用jionWith和select做关联查询
$query = Article::find();
$query->joinWith(['articleClass']);
$query->select("{{%article}}.*,{{%article_class}}.class_name");
$dataProvider = new ActiveDataProvider([
'query' => $query,]);
$this->load($params);
if (!$this->validate()) {
return $dataProvider;
}
// grid filtering conditions
精确查询
$query->andFilterWhere([
'id' => $this->id,'article_addtime' => $this->article_addtime,'article_updatetime' => $this->article_updatetime,#关联查询5:添加被关联字段的精确查询,这里要跟view表单被查询属性一致,
// '{{%article_class}}.class_name' => $this->class_name,]);
模糊查询
$query->andFilterWhere(['like',$this->article_title])
->andFilterWhere(['like',$this->article_content])
->andFilterWhere(['like',$this->article_class])
->andFilterWhere(['like','article_author',$this->article_author])
关联查询5:添加被关联字段的精确查询,这里要跟view表单被查询属性一致,
->andFilterWhere(['like','{{%article_class}}.class_name',$this->class_name]);
return $dataProvider;
}
...
}
4、在ArticleController中添加的分页内容,代码#注释部分
以上步骤完成结果如图:
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对编程之家的支持。
原文链接:https://www.f2er.com/php/17040.html