2017-04-19 2 views
1

Je suivais le document ci-dessous pour créer la table boto dynamodb documentationcomment créer une table DynamoDB en python Boto

message_table_schema = conn.create_schema(
     hash_key_name='forum_name', 
     hash_key_proto_value=str, 
     range_key_name='subject', 
     range_key_proto_value=str 
    ) 

table = conn.create_table(
     name='messages', 
     schema=message_table_schema, 
     read_units=10, 
     write_units=10 
    ) 

J'essaie le code suivant mais certains comment l'objet DynamoDB ne peut pas trouver la table create_schema.

AttributeError: 'DynamoDBConnection' object has no attribute 'create_schema'

S'il vous plaît laissez-moi savoir si cette méthode est dépréciée ou si une autre façon de créer une table.

+0

Comment avez-vous créé le 'conn'? – franklinsijo

+0

conn = boto.dynamodb2.connect_to_region (args.region) –

Répondre

1

Le DynamoDBConnection créé à l'aide boto.dynamodb2 ne méthode pas create_schema. Il fait partie de boto.dynamodb.layer2.Layer2 API.

Création de la connexion à l'aide,

import boto.dynamodb 
conn = boto.dynamodb.connect_to_region(region) 

Ou pour créer une table avec boto.dynamodb2, utilisez cette méthode create_table ou Table à la place.

+0

Merci pour le lien que vous avez mentionné pour dynamodb2, je peux voir la syntaxe pour cela, mais je ne vois pas d'exemple pour cela. donc vous avez un exemple ou un lien de la même chose? –

+0

Si vous avez besoin d'un exemple de comment passer le 'key_schema', référez-vous comment' schema' est passé à l'exemple 'create' [ici] (http://boto.cloudhackers.com/en/latest/ref/dynamodb2.html # boto.dynamodb2.table.Table). – franklinsijo

+1

Merci mon pote, ça marche –