NodeJS sdkを使用して項目をdynamoDBに配置しています。項目は次のとおりです。
{
"eventId": date + '-' + eventName + '-' + eventPurpose,
"eventName": eventName,
"eventPurpose": eventPurpose,
"eventDates": eventDates,
"attendees": attendees
}
アイテムをdynamoDBに配置するための現在のコード:
const params = {
TableName: "event",
Item: {
"eventId": date + '-' + eventName + '-' + eventPurpose,
"eventName": eventName,
"eventPurpose": eventPurpose,
"eventDates": eventDates,
"attendees": attendees
},
ReturnValues: "ALL_OLD"
};
dynamo.put(params, (err, data) => {
console.log("coming here");
if (err) {
console.log("error : " + JSON.stringify(err));
}
console.log("data" + JSON.stringify(data));
cb(null, data);
});
挿入は正しく行われ、戻り値は空のオブジェクトです。
挿入したアイテムを返品したいのですが。私はこれを見つけました doc 。しかし、これは古い値を更新する場合にのみ戻ります。これ以外に役立つ情報は見つかりませんでした。
回避策はありますか、それとも、主キーでgetメソッドを使用してクエリを実行するだけですか?
params.Item
コールバック:
dynamo.put(params, (err, data) => {
if (err) {
cb(err);
}
cb(null, params.Item);
});
err
もコールバックに渡します;)
これは挿入するアイテムであり、すでにアクセスできることに注意してください。
{
"eventId": date + '-' + eventName + '-' + eventPurpose,
"eventName": eventName,
"eventPurpose": eventPurpose,
"eventDates": eventDates,
"attendees": attendees
}
コードを次のように変更するだけで、既にitem
変数に項目を挿入できます。
var item = {
"eventId": date + '-' + eventName + '-' + eventPurpose,
"eventName": eventName,
"eventPurpose": eventPurpose,
"eventDates": eventDates,
"attendees": attendees
};
const params = {
TableName: "event",
Item: item,
ReturnValues: "ALL_OLD"
};
挿入しようとしているオブジェクトを表示することから質問を開始しますが、投稿したコードがわずかに異なるオブジェクトを挿入しているため、何を挿入するかについて混乱しているようです。