Dynamodb: невозможно получить доступ к вложенным объектам и массиву объектов
Я новичок в DynamoDb. Я пытаюсь получить доступ к объекту внутри массива:
Создан новый элемент в таблице
survey.create({
survey_name: 'Cycle',
description: 'Describe me',
test:[{
title:'hello1'
},{
title:'hello2'
}]
}, function (err, survey) {
if(err){
console.log(err)
}else{
console.log('created', survey.get('survey_name'));
}
});
Я не в состоянии получить "test[n].title", получая 0 результатов.
survey.query('Cycle')
.filter('test.title').equals('hello2') //Tried it with test[0].title also
.exec((err,data)=>{
if(err){
console.log(err);
}
else{
console.log(data);
}
});
Также я хочу получить часть (json) элемента таблицы, т.е. "проверить", если это возможно
1 ответ
Решение
Запрос к DynamoDB с использованием фильтров требует, чтобы ключ, по которому вы фильтруете, был top level
ключ. Вы не можете фильтровать, используя вложенный объектный ключ.