-1

私は10項目のテーブルを持っているので、各項目は約5つのキー(名前、経験、レベルなど)を持っています。今、そのテーブルをスキャンし、各アイテムをオブジェクトとして取得して配列に追加し、JSONでその配列をストリング化して返したいとします。ラムダでDynamoDBをスキャンするにはどうすればよいですか?

私はスキャンコードとすべてのアイテムを取得し、配列に入れるだけで助けが必要です。

ここに私のコードがあります。

var dynamodb = new AWS.DynamoDB.DocumentClient(); 
exports.handler = function(event, context, callback) 
{ 

    var returnArray = { 
     "cards": {} 
    } 
    getCards(); 

    function getCards() {//Not sure how to write this function 

     var params = { 
      TableName : "toBeApprovedTable", 
      Key: {//not sure what to put here, since I want all items, and not searching through keys. 
      }, 
     }; 

     dynamodb.scan(params,function(err,data) 
     { 
      if(err) 
      { 
       console.log("error in scanning"); 
      } 
      else 
      { 
       console.log("scanning success!"); 
       //Not sure what to do here. 
      } 
     }); 
    } 

}; 

答えて

0

私はGoogle + AWSのドキュメントをスクラップしてしまった。

テーブル内のすべての要素をスキャンする方法は次のとおりです。私のリターンは、要素の配列を含むマップです。各要素は私のオブジェクトのマップです。

exports.handler = function(event, context, callback) 
{ 

    var returnArray = { 
     "cardsToBeApproved":[] 
    }; 
    getCards(); 

    function getCards() {//Not sure how to write this function 

     var params = { 
      TableName : "toBeApprovedTable" 
     }; 

     dynamodb.scan(params,onScan); 
    } 

    function onScan(err,data) 
    { 
     if(err) 
     { 
      console.log("unable to scan table"); 
     } 
     else 
     { 
      console.log("scan succeeded"); 
      data.Items.forEach(function(card) 
      { 
       console.log("my card name is " + card.name); 
       var cardStringified = JSON.stringify(card); 
       returnArray.cards.push(card); 
      }); 
      callback(null,JSON.stringify(returnArray)); 
     } 
    } 

}; 
+0

私がラインを説明する必要がある場合はコメントをドロップしてください:) – TheQ

関連する問題