0

エンティティをバッチ編集するにはどうすればよいですか?

GAE のデータ ビューアでは、1 つのエンティティをクリックして手動で入力し、その値を置き換えることができます。しかし、一度に複数の (数千の) エンティティに対してこれを行うにはどうすればよいでしょうか?

値の中に特定の文字列を持つ各エンティティを見つけて、それを別のエンティティに置き換えたいだけです。

GAE のダッシュボード/データ ビューアーには、このためのコントロールが表示されません。それとも、アプリ内でこれを達成することは可能ですか? それが違いを生むなら、それはPythonにあります...

4

2 に答える 2

1

通常の SQL サーバーのようにエンティティをバッチ編集することはできません。可能な解決策:

  1. 独自の移行メソッドを作成し、エンティティが多すぎない場合 (数千個) は自分で呼び出します。
  2. 並行して作業できるMapReduce 。
  3. 他の回答で説明されているように、リモート API を使用します。
于 2012-09-20T06:03:16.277 に答える
1

SDK から快適にデータストアを操作できるリモート APIを見てみましょう。次のようなことができます。

q = MyModel.all()
for entity in q:
    # Do your search-and-replace operation on entity

パフォーマンスと一度にフェッチできるエンティティの数に関する注意事項があるので、記事を読んでください。

于 2012-09-20T00:33:29.290 に答える