----------------- ДАЙТЕ БОЛЬШЕ БЕТОННЫХ ПРИМЕРОВ НИЖЕ -----------------
У меня естьследующая функция, где я беру пользователя, имя, пол из параметров и обновляю существующего клиента для этого пользователя.
function createRecord(user, personName, sex) {
var sexPayload = [];
var dynamoParams = {
TableName: 'account',
Key: {
id: user
},
UpdateExpression: "set #client.#person.#sex = :sexPayload",
ExpressionAttributeNames: {
"#client": "client",
"#person": personName,
"#sex": sex
},
ExpressionAttributeValues: {
":sexPayload": sexPayload,
},
ConditionalExpression: "attribute_not_exists(#client.#person.#sex)"
};
docClient.update(dynamoParams, function(err, data){
something...
});
}
если personName = "John" sex = "man", это создает
client: {
John: {"M": {"man": {"L": []}}},
}
и когда я передаю другое имя = "Джон", пол = "женщина", это переопределяет существующего Джона "мужчина" и пишет "женщина" под Джоном
client: {
John: {"M": {"female": {"L": []}}},
}
Чего я хочу достичьэто:
client: {
John: {"M": {"man": {"L": []}, {"female": {"L": []}},
}
что я делаю не так ??