aws appsync объединяет операторов фильтров
Возможно ли в AWS appsync / ampify объединить операторы фильтров, например:
const filterInput = {
or:[
{
and: [
{createdById: { eq: userID }},
{chatWithId: { eq: chatWithUser.id }}
]
},
{
and: [
{createdById: { eq: chatWithUser.id }},
{chatWithId: { eq: userID }}
]
}
]
}
Потому что для меня это не фильтрация / работа, как ожидалось.
1 ответ
Спасибо за дополнительную информацию. Со схемой Amplify, которая выглядит следующим образом:
type Chat @model {
id: ID!
createdAt: String
createdById: String
chatWithId: String
messsages: [Message]
}
По умолчанию для хранения значений создается таблица с ключом HASH, в которой хранятся значения идентификатора, и нет способа эффективно выполнить запрос, который вы пытаетесь выполнить, используя только структуру ключей по умолчанию. В будущем у вас будет больше инструментов для управления структурой индекса таблицы @model, но пока единственный способ сделать это - через @connection.
Вот пример схемы, которая может помочь вам начать создавать API, которые могут более эффективно запрашивать эти отношения.