• thinkphp一对多HAS_MANY


    关联关系
    通常我们所说的关联关系包括下面三种:
    一对一关联 :ONE_TO_ONE,包括HAS_ONE 和 BELONGS_TO
    一对多关联 :ONE_TO_MANY,包括HAS_MANY 和 BELONGS_TO
    多对多关联 :MANY_TO_MANY
    关联关系必然有一个参照表,例如:
    有一个员工档案管理系统项目,这个项目要包括下面的一些数据表:基本信息表、员工档案表、部门
    表、项目组表、银行卡表(用来记录员工的银行卡资料)。
    这些数据表之间存在一定的关联关系,我们以员工基本信息表为参照来分析和其他表之间的关联:
    每个员工必然有对应的员工档案资料,所以属于HAS_ONE关联;
    每个员工必须属于某个部门,所以属于BELONGS_TO关联;
    每个员工可以有多个银行卡,但是每张银行卡只可能属于一个员工,因此属于HAS_MANY关联;
    每个员工可以同时在多个项目组,每个项目组同时有多个员工,因此属于MANY_TO_MANY关联;
    分析清楚数据表之前的关联关系后,我们才可以进行关联定义和关联操作。

    对于HAS_MANY举一个小例子如下:

    某个商品下有无数个用户评论:

    GoodsModel.class.php

    <?php
    namespace HomeModel;
    use ThinkModelRelationModel;
    class GoodsModel extends RelationModel{
        protected $_link = array(
            'comment'=>self::HAS_MANY //这是一个常量,声明是一对多关系,并且Relation已经内部集成了Model功能了
        );
    }
     ?>

    在调用商品详情的时候显示这个商品的用户评论,只需要:

    $goods_comment = $goodsModel->relationGet('comment');

    就可以取得所有用户的评论,就是这么简单!

  • 相关阅读:
    登录业务逻辑相关
    自定义弹出效果
    'Missing recommended icon file
    检查项目里是否有IDFA的方法
    cell当中的按钮如何获得cell内容
    iOS开发中打电话发短信等功能的实现
    iOS 判断设备型号
    iOS 根据字符串内容动态计算行高
    IOS TableView 去除点击后产生的灰色背景
    App上架流程(2016最新)
  • 原文地址:https://www.cnblogs.com/xiong63/p/6123262.html
Copyright © 2020-2023  润新知