今天碰到一个需求是需要自己关联自己,输出数据为树状,我们在定义关联关系的用get_calss方法

   /*** 定义关联关系* @return \think\model\relation\HasMany*/public function user(){return $this->hasMany(get_class($this),'area','area');}

{"code": 200,"message": "成功","data": [{"area": "自营","user": [{"id": 2,"usr": "毅拓科贸","area": "自营"},{"id": 3,"usr": "安博","area": "自营"},{"id": 4,"usr": "世纪扬天","area": "自营"},{"id": 5,"usr": "沧田","area": "自营"},{"id": 6,"usr": "佳阳电子","area": "自营"},{"id": 7,"usr": "博中天虹","area": "自营"},{"id": 8,"usr": "丹灵","area": "自营"},{"id": 153,"usr": "中美隆","area": "自营"},{"id": 154,"usr": "格力","area": "自营"},{"id": 155,"usr": "美承","area": "自营"}]},{"area": "安阳","user": [{"id": 9,"usr": "安阳A","area": "安阳"},{"id": 27,"usr": "安阳B","area": "安阳"},{"id": 59,"usr": "林州市","area": "安阳"},{"id": 62,"usr": "安阳县","area": "安阳"},{"id": 82,"usr": "滑 县","area": "安阳"},{"id": 113,"usr": "内黄县","area": "安阳"},{"id": 119,"usr": "汤阴县","area": "安阳"}]},

这里的get_class($this):获取的是当前类名

get_called_calss和它不同,是调用该方法的类名(和self,static和区别都是在继承上).

转载于:https://www.cnblogs.com/hanshuai0921/p/7261319.html

使用ORM关联关系,如何自己关联自己相关推荐

  1. 【整理】Laravel中Eloquent ORM 关联关系的操作

    Laravel中Eloquent ORM 关联关系的操作 关联数据 定义关联关系 一对一 <?php class User extends Model{// 获取关联到用户的手机public f ...

  2. django ORM中的RelatedManager(关联管理器)

    关联管理器应用在 一对多的表 或者 多对多的表 多对多表中的用法: 在多对多的表中 正向查询 #基于对象的查询 #正查 # author_obj = Author.objects.get(id=1) ...

  3. Python sqlalchemy orm 多外键关联

     多外键关联 注:在两个表之间进行多外键链接 如图: 案例: # 创建两张表并添加外键主键 # 调用Column创建字段 加类型 from sqlalchemy import Integer, For ...

  4. laravel 关联关系之多态关联

    多态关联 文章.作者与收藏的关联关系:收藏既可以是对文章的收藏,也可以是对作者的收藏 表:artist: 字段:id name 表:article: 字段:id title content 表:fav ...

  5. 使用 Eloquent ORM 使用 with 模型关联查询,如何处理select不同模型的字段(字段名可能相同)

    遇到一个问题,就是articles和article_comments两个数据模型 现在要查出来某个用户的评论列表(列表包含 评论内容article_comments.content.评论时间artic ...

  6. ORM多表查询——关联查询

    一.关联查询: 通过父表参数获取从表数据,通过从表参数获取父表数据 从表查询主表中的数据 附件:数据表截图 项目表  接口表 现在要实现的需求如下: 1.查询项目名称中包含'搜狗'的所属接口信息: 分 ...

  7. 关联:面向对象编程当中的关联关系【python】

    面向对象编程当中的关联关系 有关面对对象关联的文字解释如下: 关联关系 概念 对象和对象之间的连接.类A关联类B的意思是,如果实例化一个A类的对象,同时会有一个B类的对象被实例化.也就是说,B作为A的 ...

  8. 为什么ORM性能比iBATIS好?

    缓存是有很多层次的,有web server前端缓存,有动态页面静态化,有页面片断缓存,有查询缓存,也有对象缓存.不同层面的缓存适用于不同的应用场景,作用也各自不同,如果可以,你全部一起用上,他们不矛盾 ...

  9. Python全栈:Django中的ORM模型

    文章目录 1 Django中的ORM模型介绍及配置 2 Django中的ORM模型常见字段类型 CharField DateTimeField 模型的创建 3 Django中的ORM模型同步 migr ...

最新文章

  1. 写在Flutter 1.0之前
  2. 工作中总结的一些C#小经验,随时更新
  3. mseloss 与 smooth_l1_loss比较
  4. Robot Perception for Indoor Navigation《室内导航中的机器人感知》
  5. 你必须会的--Dijkstra算法--单源最短路径问题
  6. 树莓派linux系统识别u盘启动,树莓派Raspberry Pi实战之命令行下实现USB存储设备自动挂载...
  7. 如何在 SAP CRM WebClient UI 里在 Context node 上下文里访问其他 Context Node 的数据
  8. 如何区分普通感冒流感和新型冠状病毒肺炎?
  9. 资产模型数据初始化时应注意的事项
  10. python爬取网页时返回http状态码HTTP Error 418以及如何查看自己的User-Agent
  11. linux负载均衡技术的分类,LinuxLVS负载均衡群集
  12. 使用PowerShell创建Azure Storage的SAS Token访问Azure Blob文件
  13. vb 关于commondialog的多选
  14. 四元数和旋转_使用OpenCV的四元数
  15. 现代语音信号处理之倒谱分析与同态滤波
  16. MD5类加密解密工具类
  17. 计算机软件销售适用增值税税率,计算机软件研发企业要交什么税,税率是多少...
  18. 本科论文查重率多少?
  19. python实现csv行列转置
  20. 微信小程序 position: absolute位置错乱问题

热门文章

  1. 使用 Python 快速扫描局域网中活动的 IP
  2. 手把手教你如何免费注册国际顶级域名
  3. Android-->Log系统logger保存日志到本地
  4. 阶乘分之一java_阶乘公式等于e的n次方
  5. 五险一金、社保卡、公积金卡...的使用
  6. 第一篇 微信商城 开发前的准备工作
  7. centos7安装gcc报错
  8. Unity C#工具类 ArrayHelper
  9. itextpdf计算table高度,判断PDF剩余高度实现换页添加
  10. 漂亮的字体组合的秘密