Amazon web services AppSync-当数组属性具有关联的“@key”指令时,无法使用数组创建架构
我最近在一个模式字段中添加了一个Amazon web services AppSync-当数组属性具有关联的“@key”指令时,无法使用数组创建架构,amazon-web-services,graphql,aws-appsync,Amazon Web Services,Graphql,Aws Appsync,我最近在一个模式字段中添加了一个@key指令,这样我就可以按该字段进行搜索,尽管我现在得到一个错误,这意味着以前正确的数据类型不是预期的数据类型。它说它需要一个字符串,但得到了一个列表,尽管该字段是一个包含枚举的列表 是否可以不使用@key按特定字段进行查询?如果不是,当@键(似乎)将列表的预期类型更改为字符串时,如何创建记录 下面是我的代码,我将@键添加到类别列表中,但现在当我尝试创建一个新的旅程时,我得到如下所示的错误 这是模式: type Journey @model @auth(ru
@key
指令,这样我就可以按该字段进行搜索,尽管我现在得到一个错误,这意味着以前正确的数据类型不是预期的数据类型。它说它需要一个字符串,但得到了一个列表,尽管该字段是一个包含枚举的列表
是否可以不使用@key
按特定字段进行查询?如果不是,当@键(似乎)将列表的预期类型更改为字符串时,如何创建记录
下面是我的代码,我将@键
添加到类别
列表中,但现在当我尝试创建一个新的旅程
时,我得到如下所示的错误
这是模式:
type Journey @model
@auth(rules: [{ allow: owner, operations: [create, delete, update] }])
@key(name: "getJourneysByCategories", fields: ["categories"], queryField: "getJourneysByCategories")
@key(name: "getJourneysByName", fields: ["name"], queryField: "getJourneysByName") {
id: ID!
name: String!
description: String
coverImage: String
isPrivate: Boolean!
members: [JourneyUsersBridge] @connection(name: "JourneyUsers")
moderators: [JourneyModeratorsBridge] @connection(name: "ModeratedBy")
creator: User! @connection(name: "JourneyCreator")
goals: [Goal] @connection(name: "JourneyGoals")
posts: [Post] @connection(name: "JourneyPosts")
categories: [JourneyCategory!]!
}
这是用于创建旅程的代码示例:
类型CreateJourneyInput={
名称:字符串;
description?:字符串|空;
封面图片?:字符串|空;
isPrivate:布尔值;
类别:阵列;
journeyCreatorId:字符串;
};
常量旅程:CreateJourneyInput={
名称:“我的GraphQL之旅”,
description:'此旅程是使用GraphQL减去数据存储完成的!',
isPrivate:false,
类别:[JourneyCategory.EXMAMPLE],
journeyCreatorId:用户ID
};
const result=await API.graphql(
graphqlOperation(translations.createTourney,{input:Tourney})
);
这是全部错误:
"One or more parameter values were invalid: Type mismatch for Index Key categories Expected: S Actual: L IndexName: getJourneysByCategories (Service: AmazonDynamoDBv2; Status Code: 400; Error Code: ValidationException; Request ID: U4EB7HPO1GU5LHVAOPMGAJJHANVV4KQNSO5AEMVJF66Q9ASUAAJG)"
因此,我删除了getJourneysByCategories
键,上传工作正常。这里发生了什么,为什么
我只想能够通过类别查询
-也许@key
不是正确的路线?key指令不适用于列表吗