Is it possible to combine if_not_exists and list_append in update_item

后端 未结 2 1469
天命终不由人
天命终不由人 2020-12-05 01:22

I\'m trying to use the update_item functionality for DynamoDB in boto3.

I\'m struggling right now to update lists for items. I would like to create a n

相关标签:
2条回答
  • 2020-12-05 01:51

    You can use list_append(if_not_exists()) construction.

    UpdateExpression:

    'SET my_list2 = list_append(if_not_exists(my_list2, :empty_list), :my_value)'
    

    ExpressionAttributeValues:

    { ":my_value":[{"S":"test"}], ":empty_list":{"L":[]} }
    
    0 讨论(0)
  • 2020-12-05 02:09

    An alternative to Boris solution could be to use set instead of list datatype and use the ADD keyword, it does exactly what you want.

    With Add, the update expression becomes: ADD setName :s

    And the expression attribute values can be like: {":s": {"SS":["First", "Second"]}}

    http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.UpdateExpressions.html#Expressions.UpdateExpressions.ADD

    0 讨论(0)
提交回复
热议问题