Php 如何在Laravel中使用多个透视表?
我有四张桌子 订单-Php 如何在Laravel中使用多个透视表?,php,mysql,laravel,Php,Mysql,Laravel,我有四张桌子 订单-PK(订单号) 订单集合-PK(订单集合id),FK(订单id) 订单收集产品-PK(订单收集产品id),FK(订单收集产品id) 产品-PK(产品id) Laravel文档解释了如何仅使用一个透视表获取数据。 那么,如何从产品表中获取与特定订单相关的数据呢? 如何使用两个数据透视表?关于您的问题,您是否希望订单和产品之间有一个数据透视表,或者只希望按订单(反之亦然)获得产品。@CarlosHerreraPlata例如,我想获取特定订单id的所有产品的名称。名称存储在产品表中
PK(订单号)
订单集合-PK(订单集合id)
,FK(订单id)
订单收集产品-PK(订单收集产品id)
,FK(订单收集产品id)
产品-PK(产品id)
Laravel文档解释了如何仅使用一个透视表获取数据。
那么,如何从产品表中获取与特定订单相关的数据呢?
如何使用两个数据透视表?关于您的问题,您是否希望订单和产品之间有一个数据透视表,或者只希望按订单(反之亦然)获得产品。@CarlosHerreraPlata例如,我想获取特定订单id的所有产品的名称。名称存储在产品表中。所以我需要通过两个数据透视表来连接订单和产品表。比如:product->order\u collections()->first()->order->name
@CarlosHerreraPlata您能不能编写这个语句将使用的类?您可以通过数据透视表将产品与订单集合关联,订单集合与订单关联,通过一对多(我认为),所以,您可以访问First,获得de order\u collection$order\u collection=product->order\u collections()->fist()
,在获得与订单相关的$order\u collection->order->name
之后,另一个选项是通过关系进行多个连接或进行连接