我正在为食堂项目中的订单创建功能。我提出了这些雄辩的关系:
如果我想获取order_product的食堂数据,只需键入order_product>Product->食堂->id即可。


这是我所做的,以显示命令的细节。但这些清单不是由食堂编号定的。因此,我希望订单的雄辩关系->产品返回产品的订单,由canteen_id订购.有人有办法解决这个问题吗?
发布于 2021-10-30 07:10:17
我不认为您可以使用当前的方法(或者使用雄辩的方法)来实现它,因为对象的父对象是OrderProduct,而每个Canteen都在OrderProduct中,所以如果您使用雄辩来应用一个顺序,它将只为每个OrderProduct排序,而不是全局的。为举例说明:
{
order_products: [
{
id: 1,
canteen: {
id:1
}
},
{
id: 2,
canteen: {
id:3
}
},
{
id: 3,
canteen: {
id:2
}
}
]如果您根据上面的格式应用订单,它将保持不变,因为:(1)您只有一个Canteen对象,而(2)如果您与Canteen有一对多的关系,它将只分别对Canteen的id进行排序。因此,您要寻找的格式可能类似于以下内容:
[
{
canteen_id: 1,
order_product_id: 2
},
{
canteen_id: 2,
order_product_id: 3
},
{
canteen_id: 3,
order_product_id: 1
}
]这样,您可以在整个列表中对Canteen的id进行全局排序。有两种方法可以做到这一点。第一种方法是从Canteen模型中获取数据,然后通过OrderProduct进行处理。或者,您可以使用原始查询风格,这样就可以创建自己的对象(不再像雄辩者提供的那样分组),并按Canteen的id排序。
https://stackoverflow.com/questions/69777409
复制相似问题