关联模型
来源:8-4 隐藏模型字段
哭泣的鱼儿
2017-10-24
select oi.order_id,og.rec_id
FROM ecs_order_info as oi
left join ecs_order_goods as og on og.order_id = oi.order_id
limit 5,老师我直接写的一个sql可以查出两个字段的id,但是我用belongsTo一对一关联的时候查出order_info里面的字段,另一张表的数据没反映 ,看了好多次视频和管方文档也没找到原因,求解!!!在线等,谢谢
3回答
-
7七月
2017-10-25
我有点没明白,order_info和good之间是1对1的关系?你自己代码里都写的是goods,为什么是1对1?还有就是贴代码麻烦能不能格式化一下,看这段代码用了十几分钟。
052017-10-26 -
哭泣的鱼儿
提问者
2017-10-24
就是只查出了order_info的数据,order_goods里面的数据没有查出来,
class OrderInfo extends Model {
protected $visible = ['order_id'];
public function oGoods(){
return $this->belongsTo('OrderGoods','order_id','order_id');
}
public static function getOrder(){
$order = self::with('oGoods')->find();
return $order;
}
}use think\Model;
class OrderGoods extends Model{
protected $visible = ['rec_id'];
}$order结果是Array([order_id] => 1)
select oi.order_id,og.rec_id
FROM ecs_order_info as oi
left join ecs_order_goods as og on og.order_id = oi.order_id
limit 1 这个是Array([order_id]=>1,[rec_id]=>5)
看了下日志sql没毛病啊
[ sql ] [ SQL ] SHOW COLUMNS FROM `ecs_order_info` [ RunTime:0.043002s ]
[ sql ] [ SQL ] SELECT * FROM `ecs_order_info` LIMIT 1 [ RunTime:0.001000s ]
[ sql ] [ SQL ] SHOW COLUMNS FROM `ecs_order_goods` [ RunTime:0.041002s ]
[ sql ] [ SQL ] SELECT * FROM `ecs_order_goods` WHERE `order_id` = 155 [ RunTime:0.000000s ]00 -
7七月
2017-10-24
我没太明白什么是另一张表的数据没反映。可否详细描述一下你的问题呢?你的模型是怎么定义的,数据表又是如何定义的。这样才能帮你分析问题。
012017-10-24