Python Boto 2.3.0でアトミックカウントカウンターを更新しようとしていますが、操作のドキュメントが見つかりません。
直接のインターフェースがないようですので、layer1インターフェースを使って「生の」アップデートに行こうとしましたが、単純なアップデートでも完了できませんでした。
私は次のバリエーションを試しましたが、すべて運がありませんでした
dynoConn.update_item(INFLUENCER_DATA_TABLE,
{'HashKeyElement': "9f08b4f5-d25a-4950-a948-0381c34aed1c"},
{'new': {'Value': {'N':"1"}, 'Action': "ADD"}})
dynoConn.update_item('influencer_data',
{'HashKeyElement': "9f08b4f5-d25a-4950-a948-0381c34aed1c"},
{'new': {'S' :'hello'}})
dynoConn.update_item("influencer_data",
{"HashKeyElement": "9f08b4f5-d25a-4950-a948-0381c34aed1c"},
{"AttributesToPut" : {"new": {"S" :"hello"}}})
それらはすべて同じエラーを生成します:
File "/usr/local/lib/python2.6/dist-packages/boto-2.3.0-py2.6.egg/boto/dynamodb/layer1.py", line 164, in _retry_handler
data)
boto.exception.DynamoDBResponseError: DynamoDBResponseError: 400 Bad Request
{u'Message': u'Expected null', u'__type': u'com.amazon.coral.service#SerializationException'}
ここでAPIドキュメントも調べましたが、かなり質素でした。
私は多くの検索と操作を行いました。残っているのは、PHP APIを使用してコードを調べ、JSON本体を「フォーマット」する場所を見つけることだけですが、それは少し面倒です。その痛みから私を救ってください!