2016-05-09 5 views
0

AWS CLIを指示に従って適切に構成しました.boto3ではなく、高度なパッケージPynamoDBからDynamoDBテーブルにアクセスしたいとします。PynamoDBと低レベルボトコアを使用したAWSへのアクセス

私はすべてがOKである

import botocore.session 
session = botocore.session.get_session() 
client = session.create_client('dynamodb') 
client.describe_table(TableName='my_table_name') 

としてDynamoDBのテーブルにboto3とPynamoDBの両方で使用される低レベルのbotocoreパッケージを介して、私のAWSのクラスタにアクセスし、接続しようとすると、テーブルはうまくアクセスされます。

しかし、私は、モデル

上の適切なメソッドを介してテーブルを説明

from pynamodb.models import Model 

class MyTableModel(Model): 

    class Meta: 
     table_name = 'my_table_name' 

    pk_field = UnicodeAttribute(hash_key=True) 
    field1 = UnicodeAttribute() 
    field2 = UnicodeAttribute() 

と再びとして、マニュアルのチュートリアルを、以下のテーブルのためのモデルを作成することにより、PynamoDBを介してアクセスしようとしています表行います

print MyTableModel.describe_table() 

私はエラー

pynamodb.exceptions.TableDoesNotExistを取得します存在しない:私はPynamoDBコードと私は理解しているように見えるに掘ってきたように、それはbotocoreから同じコードを呼び出す必要がありますし、設定が暗黙的でなければならないことである理由 がRequested resource not found: Table: my_table_name not found

私は理解していません。

答えて

0

これは、誤った構成の領域の可能性があります。 pynamoが設定されたリージョンを尊重していないように見えるので、明示的にリージョンを渡す必要があります。それ以外の場合はus-east-1になります。

+0

同じ結果をPynamoに設定しようとしました。 –

関連する問題