2016-12-13 8 views
1

paginator.paginateを使用してdynamodbにクエリを実行しようとしています。dynamodbのstatusカラムから承認済みアイテムのリストを取得する

for page_1 in paginator.paginate(TableName=chroma_organization_data_table, 
     FilterExpression='#s = Approved', 
     ProjectionExpression="#s, organizationId", 
     ExpressionAttributeNames={'#s': 'status'} 
     ): 
print page_1 

は、しかし、私は何も戻さなかっ取得:

は、ここに私のコードです。私は、「承認された」状態にあるいくつかのエントリがあることを知っています。

このだから、明らかに私はページネータを使用するときだけで、ステータスが承認されたエントリが存在しているどのように私のDynamoDBのデータを返します何の条件がそれに存在しない場合(NO FilterExpression)(例)

[{u'organizationId': {u'S': u'323454354525'}, u'status': {u'S': u'Approved'}}] 

、それはdoesnの仕事はありません。

私はこれについて何ができますか?

答えて

0

フィルタ/条件式に文字列リテラルを埋め込むことはできません。 ExpressionAttributeValuesマップを{ ":approved": "Approved" }に設定し、フィルター式を#s = :approvedに更新する必要があります。

関連する問題