laravel ORM 实现树状结构 省份-城市-医院?

2016-05-14 22:47:18 +08:00
 jtjing
province (省份表)
id
name

city (城市表)
id
name
province_id

hospital (医院表)
id
name
city_id
count (医生数量)
问:
利用 ORM 查出结果最好为一个树状结构,结构层次为下:

省份
城市
医院(为医生数量大于 0 的医院).
我自己想用 with ()拼出这个最后的结果,不过不知道怎么做.
3560 次点击
所在节点    PHP
5 条回复
laoyuan
2016-05-15 09:09:58 +08:00
首先得搞清楚最后得到的是什么东西,一个树即有数据又有关系,样子肯定怪怪的。所以最后应该是 4 个东东,一个关系树, 3 个集合。
cxbig
2016-05-15 09:36:12 +08:00
eager loading?
要不 LZ 先看看这个章节是不是你要的:
https://laravel.com/docs/5.1/eloquent-relationships#eager-loading
lincanbin
2016-05-15 10:19:42 +08:00
一个表够了,遍历一次可以构造一个三维数组。
不然就用 JOIN 。
jtjing
2016-05-16 19:47:51 +08:00
感谢楼上的作答,不过我已经用 laravel 中更加优雅的查找方式解决。
alifatguy
2016-05-18 18:06:41 +08:00
@jtjing 能分享下你是怎么解决的吗?非常感谢!顺便推荐个 Laravel 学习交流群 212423075

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/278690

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX