Javascript 续集添加多对多关系,附加数据不起作用
我定义了以下模型:Javascript 续集添加多对多关系,附加数据不起作用,javascript,node.js,sequelize.js,Javascript,Node.js,Sequelize.js,我定义了以下模型: var Order = sequalize.define( "order", { id: { type: Sequelize.STRING, primaryKey: true, }, menuId: { type: Sequelize.UUID, field: "menu_id", }, }, { timestamps: false,
var Order = sequalize.define(
"order",
{
id: {
type: Sequelize.STRING,
primaryKey: true,
},
menuId: {
type: Sequelize.UUID,
field: "menu_id",
},
},
{
timestamps: false,
}
);
Item.belongsToMany(Order, { through: OrderItem });
Order.belongsToMany(Item, { through: OrderItem });
及
我正试图弄明白如何添加订单中的项目,而不创建项目,而只是将它们添加到关系中。
我有订单的初始格式:
{
"id": "som-other-id7",
"items": [{"id": "727f9b52-a88b-4ec3-a68c-98d190564497", "count": 2}, {"id": "7dfd30e7-2d4a-4b16-ae3d-20a330d9b438"}],
"menuId": "7715af03-968f-40e5-9eb2-98016f3deeca"
}
我尝试通过以下方式将其添加到db中:
Order.create(orderJson)
.then((order) =>
orderJson.items.map((item) => order.addItem(item.id, { count: item.count }))
)
但是,未填充计数。我试过:
- 使用
代替setItem
addItem
- 而不是传递
传递item.id
{itemId,orderId}
order.addItem(item.id, { through: { count: item.count }})
请参见中的示例
order.addItem(item.id, { through: { count: item.count }})