yii2 with()

with的好处是减少sql查询;特别是查多条关联数据的时候;

ec_inventory_pkg

数据表名称:库存入库单

关系

public function getBrand() {
   return $this->hasOne(Brand::className(), ['brand_id' => 'brand_id']);
}

public function getStore() {
   return $this->hasOne(Store::className(), ['store_id' => 'store_id']);
}

 

$query  = InventPkg::find()->with('brand')
                     ->with('store')
                     ->where($where);

sql:

SELECT * FROM `ec_inventory_pkg` LIMIT 20;

SELECT * FROM `ec_brand` WHERE `brand_id` IN (1, 2);

SELECT * FROM `ec_store` WHERE `store_id` IN (7, 8, 10, 11);

代码:

if (!empty($InventPkg_list)) {
   foreach ($InventPkg_list as $key => $value) {
      $return[$key]['package_id']    = $value->package_id;
      $return[$key]['package_sn']    = $value->package_sn;
      $return[$key]['verson_no']     = $value->verson_no;
      $return[$key]['brand_id']      = $value->brand_id;
      $return[$key]['brand_name']    = $value['brand']['brand_name'];
      $return[$key]['store_id ']     = $value->store_id;
      $return[$key]['store_name']    = $value['store']['store_name'];
      $return[$key]['created_by']    = $value->created_by;
      $return[$key]['modified_by']   = $value->modified_by;
      $return[$key]['created_time']  = $value->created_time;
      $return[$key]['modified_time'] = $value->modified_time;
      $return[$key]['status']        = $value->status;
   }
}

转载于:https://my.oschina.net/xuyaoxiang/blog/834752

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值