本文介绍了在 yii2 中使用 `with` 的嵌套关系的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!
问题描述
谁能告诉我,我有几个型号:一个Item有很多→属性,On Property有很多→特性我可以这样做:
Can someone tell me, I have several model: One Item has many → Properties, On Property has many → Characteristics I can do like this:
return Item::find()->where(['code' => $code])->with('properties')->asArray()->one();
结果:
{
title: "Ванна чугунная Ностальжи 150 с ножками",
new: "0",
hit: "0",
recommend: "0",
properties: [
{
//lallala
},
{
//lallala
},
]
}
但我想要嵌套行(特征)在每个属性中我怎么能做那么优雅的方式?
But i want nested rows (Characteristics) in every property how can i do that much elegant way?
推荐答案
来自 Yii 使用数据库的指南:
您可以急切地加载深度嵌套的关系,例如 a.b.c.d.所有父关系都将被急切地加载.也就是说,当你使用 abcd 调用 with() 时,你会急切地加载 a, ab, >abc 和 abcd.
You can eagerly load deeply nested relations, such as
a.b.c.d. All parent relations will be eagerly loaded. That is, when you callwith()usinga.b.c.d, you will eagerly loada,a.b,a.b.canda.b.c.d.
所以使用properties.characteristics:
return Item::find()->where(['code' => $code])->with('properties.characteristics')->asArray()->one()
这篇关于在 yii2 中使用 `with` 的嵌套关系的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!
The End



大气响应式网络建站服务公司织梦模板
高端大气html5设计公司网站源码
织梦dede网页模板下载素材销售下载站平台(带会员中心带筛选)
财税代理公司注册代理记账网站织梦模板(带手机端)
成人高考自考在职研究生教育机构网站源码(带手机端)
高端HTML5响应式企业集团通用类网站织梦模板(自适应手机端)