Я использую AWS Appsync с DynamoDB в качестве источника данных.У меня есть 2 таблицы, одна для фотографий и одна для лайков.В решателе Appsync я хочу вернуть только фотографии с более чем 5 лайками.Как этого добиться в Appsync
Схема
type Photo {
id: ID!
likes: [LikedPhoto]
}
type LikedPhoto {
id: ID!
username: String!
photoId: String!
}
Запрос
type Query {
listPhotos(filter: PhotoFilterInput, limit: Int, nextToken: String): PhotoConnection
}
Photo Resolver
Источник данных: PhotoTable
{
"version": "2017-02-28",
"operation": "Scan",
"filter": #if($context.args.filter) $util.transform.toDynamoDBFilterExpression($ctx.args.filter) #else null #end,
"limit": $util.defaultIfNull($ctx.args.limit, 20),
"nextToken": $util.toJson($util.defaultIfNullOrEmpty($ctx.args.nextToken, null)),
}
Likes Resolver
Источник данных: LikesTable
{
"version": "2017-02-28",
"operation": "Query",
"index": "photoId-index",
"query": {
"expression": "photoId = :photoId",
"expressionValues": {
":photoId": {
"S": "$context.source.id"
}
}
}
}
HowМогу ли я написать распознаватель для лайков или фотографий, чтобы показывать только фотографии с более чем 5 лайками.