• TP5一对一、一对多关联模型的使用


    控制器:

    namespace appadmincontroller;
    use appadminmodelArticle ;
    use thinkController;
    use thinkDb;
    
    /**
     * 关于TP5一对一/一对多关联的关联查询
     * Class Member
     * @package appadmincontroller
     */
    class Guser extends Controller
    {
        public function index()
        {
            //查询所有每篇文章下的评论内容且分页
            $article_list = Article::with('comment')->order('add_time asc')->field('id,title,add_time,introduction,clicknum')->paginate(20)->toArray();
            dump($article_list);exit;
        }
    }

    模型Article.php

    /**
     * 主表(tp_article)的模型
     * Class Article
     * @package appadminmodel
     */
    class Article extends Model
    {
        /**
         * 一对多
         * 建立和tp_comment表的关联
         * hasMany方法的参数包括:hasMany('关联模型名','外键名','主键名',['模型别名定义']);
         * gg_id 是关联表的关联键名
         * clicknum 是主表的被关联的键名
         */
        public function comment()
        {
            return $this->hasMany('comment','gg_id','clicknum');
        }
    
        /**
         * 一对一
         * 建立和tp_comment表的关联
         * hasMany方法的参数包括:hasMany('关联模型名','外键名','主键名',['模型别名定义']);
         * gg_id 是关联表的关联键名
         * clicknum 是主表的被关联的键名
         */
        public function comment()
        {
            return $this->hasOne('comment','gg_id','clicknum');
        }
    }

    模型Comment.php

    /**
     * tp_comment 表模型
     * @package appadminmodel
     */
    class Comment extends Model
    {
        /**
         * 建立和tp_article表(主表)的关联
         * belongsTo的参数包括::belongsTo('关联模型名','外键名','关联表主键名',['模型别名定义'],'join类型');
         */
        public function article()
        {
            return $this->belongsTo('article');
        }
    }
  • 相关阅读:
    渐统江湖的项目原型生成工具 Maven Archetype
    ANT的安装/配置笔记
    Maven服务器安装
    为什么Eclipse替代不了Maven
    Maven入门实战笔记11节[711]
    Maven入门实战笔记11节[15]
    Maven多模块项目中应用maventomcatplugin热部署
    使用 CXF、Spring、Maven 创建一个 SOAP 客户端
    maven2创建的archetypeArtifactId类型大全
    JdbcDaoSupport应用
  • 原文地址:https://www.cnblogs.com/Essaycode/p/10161988.html
Copyright © 2020-2023  润新知