zoukankan      html  css  js  c++  java
  • 21.Yii2.0框架多表关联一对多查询之性能优化--模型的使用

    控制器里

    功能:

    通过分类,查分类下的所有文章

        //关联查询
        public function actionRelatesearch(){
            //关联查询
            //查询方法一(查一行) 一维数组下的值是obj
            $category = Category::findOne(1); //查分类表里的数据 abj
    //        $categoryarr = $category->attributes; //获取某一行的分类结果里的对象属性,array
            //查文章里的cid等于2的 拿上面的结果 $categoryarr['cid']=2 作为本次查询的条件
    //        $article = Article::find()->asArray()->where(['cid'=>$categoryarr['cid']])->all();
    
            //这里是取的是$category下的属性articles,
            //它会调用__get方法,会自动调用getArticles()方法
            //模型里可以不加all(),会自动调用all()方法
            //这里是用category作关系主表的,所以模型要写在Category模型里
            $articles = $category->articles; //效果同上面 $category->getArticles();
            dd($articles);
        }
    

    模型里

    <?php
    namespace appmodels;
    
    use yiidbActiveRecord;
    
    class Category extends ActiveRecord
    {
        public function getArticles()
        {
    //        return $this->hasMany(Article::className(),['cate_id'=>'cid'])->asArray()->all();
            //会自动调用all()方法
            return $this->hasMany(Article::className(),['cate_id'=>'cid'])->asArray();
    
        }
    }
    
    
    [Haima的博客] http://www.cnblogs.com/haima/
  • 相关阅读:
    hdu1313 Round and Round We Go (大数乘法)
    select样式控制
    tp5 分页后追加数据方法
    tp5请求类型
    layui 参数祥解
    jquery 阻止label冒泡
    svn的配置
    destoon 根目录文件结构
    关于jquery中on绑定click事件在苹果手机失效的问题
    正则表达式中的match,test,exec,search的返回值
  • 原文地址:https://www.cnblogs.com/haima/p/9602426.html
Copyright © 2011-2022 走看看