数据搜索类 PostSearch

Yii2 数据搜索类 PostSearch

 /**
     * @Purpose : 添加 authorName 属性,使属性和搜索表单相对应
     * @return array
     */
    public function attributes()
    {
        return array_merge(parent::attributes(),['authorName']);
    }
    /**
     * @purpose : 重写验证规则,使其符合表单提交的验证需求
     * @inheritdoc
     */
    public function rules()
    {
        return [
            [['id', 'status', 'create_time', 'update_time', 'author_id'], 'integer'],
            [['title', 'content', 'tags','authorName'], 'safe'],
        ];
    }

  public function search($params)
    {
        // 搜索的实现 : 是靠查询构建器程序化得构建查询,然后交给数据提供者,在后续阶段去执行查询
        $query -> join('INNER JOIN','Adminuser','Post.author_id=Adminuser.id');
        $query ->andFilterWhere(['like','Adminuser.nickname',$this->authorName]);

        // 排序的实现: 程序化得设置数据提供者 DataProvider 的 sort 配置来实现的
        $dataProvider -> sort -> attributes['authorName'] =
        [
            'asc' => ['Adminuser.nickname' => SORT_ASC],
            'desc'=> ['adminuser.nickname' => SORT_DESC],
        ];
        return $dataProvider;
    }

注:本文为作者(44106-kangaroo) 看完魏羲教你学Yii2.0 视频后所记,如有转载请注明出处:http://www.cnblogs.com/chrdai/p/7966793.html

 

相关文章:

  • 2022-02-10
  • 2021-09-08
  • 2021-10-03
  • 2022-12-23
  • 2022-12-23
  • 2021-11-09
  • 2022-01-07
  • 2022-01-05
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-06-29
  • 2022-12-23
  • 2021-10-17
  • 2021-05-31
  • 2021-06-12
相关资源
相似解决方案