2016-06-09 6 views
6

в документации boto3 обновляя элемент описывается в этом примере:Boto3 обновление нескольких значений

table.update_item(
    Key={ 
     'username': 'janedoe', 
     'last_name': 'Doe' 
    }, 
    UpdateExpression='SET age = :val1', 
    ExpressionAttributeValues={ 
     ':val1': 26 
    } 
) 

Но что же я должен делать, если я хочу обновить несколько значений элемента. Я не мог найти никакой информации об этом. Может ли кто-нибудь помочь? Спасибо!

EDIT:

Хорошо, это, кажется, работает, как это, кто-нибудь может подтвердить это кастрированный баран правильный путь. Просто чтобы быть уверенным, что я не делаю ничего совершенно неправильно.

table.update_item(
        Key={ 
         'id': item['id'] 
        }, 
        UpdateExpression='SET value1 = :val1, value2 = :val2', 
        ExpressionAttributeValues={ 
         ':val1': someValue1, 
         ':val2': someValue2 
        } 
       ) 

Спасибо!

+1

Да, это правильно. Здесь четко указано: http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.Modifying.html –

ответ

3

Да, это способ сделать. Даже многие действия могут выполняться в одном выражении, как показано на рисунке here. Например: множественные 'PUT' и 'DELETE' в одном выражении.

Snapshot showing the example from document

+1

Эй, это очень интересно. Большое спасибо за ваш ответ! – weka1

Смежные вопросы