Lambda返回条件checkfailedexception而不是更新项

2024-09-27 04:23:46 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图让Lambda函数更新DynamoDB表中的结果,但我只想更新表中的现有条目/项,而不创建新项

我目前有以下情况:

def updateDynamo(asset, averageRating) : 
    updateItem = ChipRatingTable.update_item(
        Key={
            'AssetID': asset
        },
        UpdateExpression="SET AverageRating = :a",
        ConditionExpression='attribute_exists(AssetID)',
        ExpressionAttributeValues={
            ':a': Decimal(str(averageRating))
        },
        ReturnValues="UPDATED_NEW"
    ) 

我曾尝试做过一些研究,并注意到ConditionExpression是一种方法,但每次尝试时都会出现错误:

"errorMessage": "An error occurred (ConditionalCheckFailedException) when calling the UpdateItem operation: The conditional request failed", "errorType": "ConditionalCheckFailedException"

任何帮助都将不胜感激!谢谢


Tags: lambda函数def情况update条目assetdynamodb

热门问题