У меня есть динамо-таблица с Costcenter в виде ключа ha sh, и я хочу добавить новые сведения о команде в отдельный элемент / запись БД, если имя команды не существует.
мой код выполняется в лямбда-выражении.
import json
import boto3
dynamodb_res = boto3.resource('dynamodb', region_name='ap-south-1')
table=dynamodb_res.Table('sampletable')
def lambda_handler(event, context):
def add_team():
table.put_item(
Item={
'COSTCENTER': event['costcenter'],
'Teams': {
event['teamName']: {
"EMAIL": event['email'],
"GROUP": event['group']
}
}
},
ConditionExpression= "attribute_not_exists(Teams[event['teamName']])"
)
add_team()
параметр event['teamname']
содержит информацию о названии команды. Параметры находятся в консоли событий конфигурации лямбда-теста.
Мои параметры :
{
"teamName": "team1",
"costcenter": "0000",
"email": "sample@samplename.com",
"group": "devops"
}
Команда 'team1' должна быть добавлена, только если ее там нет. Я получаю ошибку ниже после запуска кода.
"errorType": "ClientError",
"errorMessage": "An error occurred (ValidationException) when calling the PutItem operation: Invalid ConditionExpression: Syntax error; token: \"event\", near: \"[event[\""