【发布时间】:2022-01-01 18:00:13
【问题描述】:
我正在尝试使用新的 @hasMany 指令在 Amplify Datastore 中建立简单的多对多关系。不幸的是,除了“如果你想在连接表上存储额外的属性,或者如果你有一个现有的连接表,你可以继续使用两个 @hasMany @belongsTo 关系来促进多对- 多关系”。
我想为具有多对多关系的仓库和零件提供表格,以跟踪特定仓库中特定零件的库存数量:
type Part @model {
id: ID!
description: String!
inventories: [Inventory] @hasMany(indexName: "warehousesByPart", fields: ["id"])
}
type Warehouse @model {
id: ID!
description: String!
inventories: [Inventory] @hasMany(indexName: "partsByWarehouse", fields: ["id"])
}
type Inventory @model {
id: ID!
warehouseId: ID! @index(name: "partsByWarehouse", sortKeyFields: ["partId"])
partId: ID! @index(name: "warehousesByPart", sortKeyFields: ["warehouseId"])
part: Part! @belongsTo(fields: ["partId"])
warehouse: Warehouse! @belongsTo(fields: ["warehouseId"])
inStock: Int!
}
这只是一个前端实现。 Amplify CLI 是最新版本 (7.6.5)。我得到的错误是
处理 Warehouse.inventories 上的 @hasMany 指令时出错,@index 在连接模型中找不到名为 partsByWarehouse 的指令 库存
我做错了什么?非常感谢任何帮助。
【问题讨论】:
标签: aws-amplify