在yii2中使用' with '嵌套关系


Nested relations using `with` in yii2

谁能告诉我,我有几个模型:One Item有许多→属性, On Property有许多→特征我可以这样做:

return Item::find()->where(['code' => $code])->with('properties')->asArray()->one();
结果:

{
  title: "Ванна чугунная Ностальжи 150 с ножками",
  new: "0",
  hit: "0",
  recommend: "0",
  properties: [
  {
    //lallala
  },
  {
    //lallala
  },
  ]
}

但我想嵌套行(特征)在每个属性我怎么能做到这么多优雅的方式?

来自数据库使用指南:

你可以急切地加载深度嵌套的关系,比如a.b.c.d。所有父关系都将被急切加载。也就是说,当您使用a.b.c.d调用with()时,您将急切地加载a, a.b, a.b.ca.b.c.d

所以使用properties.characteristics:

return Item::find()->where(['code' => $code])->with('properties.characteristics')->asArray()->one()