Обновление DynamoDB - ExpressionAttributeNames можно указывать только при использовании выражений - PullRequest
0 голосов
/ 27 апреля 2019

Мне нужен еще один взгляд на это.В жизни я не вижу проблем с этим набором параметров, который используется для Dynamo DocumentClient, метод update - (здесь: https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/DynamoDB/DocumentClient.html#update-property).

{
    TableName: "mygame-dev",
    Key: { pk: "09d017aa-cbf7-42ce-be6a-a94ecb58f9a7", sk: "GAME" },
    ExpressionAttributeNames: { "#GAMELASTUPDATED": "gameLastUpdated", "#GAMETITLE": "gameTitle" },
    ExpressionAttributeValues: { ":gamelastupdated": 1556376010704, ":gametitle": "test title 1" },
    UpdateExpression: "SET #GAMELASTUPDATED = :gamelastupdated, #GAMETITLE = :gametitle",
    ReturnValues: "ALL_NEW"
};

Ошибка:

ValidationException: ExpressionAttributeNames можно указывать только при использовании выражений

Есть мысли?

1 Ответ

0 голосов
/ 27 апреля 2019

Не обращайте внимания, это была проблема копирования и вставки ... Я использовал "запрос", а не "обновление"

Было:

const updateGameResult = await ddbCall("query", params);

Должно было быть:

const updateGameResult = await ddbCall("update", params);
...