![](/img/trans.png)
[英]LARAVEL | Many-To-Many Relationship Between Three Tables - saving data from two arrays
[英]Mysql many-to-many relationship problem between two tables
首先,如果我的标题有误,我深表歉意。 我找不到如何解决我遇到的问题 state。 我正在研究 Laravel 项目。 我有两个表,分别称为 orders 和 order_items。
Mysql 表:
订单
order_items
我想要达到的图像:
我想以手风琴菜单的形式向用户显示他帐户中的订单以及属于该订单的产品。 页面上可能有多个订单。 当我尝试使用 leftJoin 时,自然会多次重复相同的顺序。 我不明白这是我需要在 mysql 端还是 php 端解决的问题。 你能给我一个关于这个问题的指导吗?
我当前的代码:
$query = Order::query();
$query->where('order_customer_id', $customerID);
$query->leftJoin('order_items', 'orders.order_id','=','order_items.order_id');
$data['orderList'] = $query->get();
return view('pages.orders.index', $data);
从您的数据库中,我看到了它的一对多关系(不像您的标题所说的多对多)。
您可以在model上创建关系
OrderItem.php
public function order(){
$this->belongsTo(Order::class);
}
订购.php
public function orderitem(){
$this->hasMany(orderitem::class);
}
在controller ,获得订单
$orders = Order::with('orderitems')->get();
return view('yourview',compact('orders'))
在视图
@foreach($orders as $order)
{{$oder->name}}
@foreach($order->orderitem as $orderItem)
{{$orderItem->name}}
@endforeach
@endforeach
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.