ここに私のジレンマがあります。エンティティのリストを調べて、繰り返しプロパティ (私は NDB を使用しています) が空かどうかを確認する必要があります。そうであれば、それに値を割り当ててput()
. それ以外の場合、エンティティをスキップします。Google App Engine に付属のリモート ログイン シェルでこれらすべてを実行しようとしています。
Model.query() を反復処理し、条件を実行し、値を書き込もうとしましたが、書き始めるとプロセスがハングアップします。最後に Ctrl-C を押すと、「assert response.set_status_size() == len(server_keys); AssertionError」というエラーが表示されます。これは、取得しようとしているエンティティのサイズと関係があると思います。何が起きているか知っている人はいますか?これが私の現在のコードです:
>>> for entity in Model.query():
... if not len(entity.references):
... entity.references = somevalue
... continue
... print 'skipped'
ステートメントを使用する代わりにクエリをフィルタリングするだけif
ですが、繰り返されるプロパティの長さでクエリをフィルタリングする方法がわかりません。