добавить значения строкового массива в динамо-базу - PullRequest
0 голосов
/ 08 мая 2020

Я пытаюсь использовать put_item для добавления массива строк в Dynamodb.

Это код, который я написал:

table = dynamodb.Table('variables')
string = [first line, second line, third line]

table.put_item(
    Item = {
        "variables": { "SS": [ string ]}
    }
)

Но я получаю следующую ошибку :

"errorMessage": "Произошла ошибка (исключение ValidationException) при вызове операции PutItem: одно или несколько значений параметра были недопустимыми: отсутствуют ключевые строки в элементе"

Я пробовал читаем документацию, но безуспешно.

1 Ответ

0 голосов
/ 08 мая 2020

Если вы используете ресурс Table, вам не нужно указывать типы DynamoDB, например SS. Просто поместите свой элемент в dict, иначе вы увидите, что эти типы интерпретируются как фактические данные.

Существует некоторая путаница между client.put_item(), который ожидает необработанные данные с типами, и Table.put_item(), который ожидает обычный dict. По возможности используйте таблицу 1.

В вашем случае она должна выглядеть примерно так: table.put_item(Item = {"variables": string})

...