ローカルのGoogle App-engineデータストアからすべてのエンティティを削除するにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/1010573

質問

dev_appserverですべてのエンティティを削除したり、ローカルデータストアをリセットしたりするにはどうすればよいですか?テスト中に誤って再帰的に関数を呼び出してエンティティを作成しました。

Pythonを搭載したVistaでGoogle App-engine SDKを使用しています。

役に立ちましたか?

解決

dev_appserver.py --clear_datastore=yes myapp

詳細については、こちらをご覧ください。

短縮版:

dev_appserver.py -c

他のヒント

Javaソリューションのためにここに来た場合:次のファイルを削除します:

{project root} /WEB-INF/appengine-generated/local_db.bin

プロジェクトを再構築して再起動します。

dev_appserver.py [アプリディレクトリ] --clear_datastore true

ポートを解放するために実行中のサーバーをシャットダウンする必要があります

行うべき便利なことは、常に--datastore_pathを指定することです。 --datastore_path = test.datastore。

削除するには、ファイルを削除するだけです。また、コピーを保持し、それらを交換できます。そして、ストアはリブート後も持続します(Linuxでのデフォルトの場所/ tmp /がクリアされた場合)

実稼働中-にアクセスできます appengineダッシュボード=>データストア管理者

dev_appserverを実行した後の私の出力です

INFO     2017-03-21 15:07:36,085 devappserver2.py:764] Skipping SDK update check.
INFO     2017-03-21 15:07:38,342 api_server.py:268] Starting API server at: http://localhost:63970
INFO     2017-03-21 15:07:38,349 dispatcher.py:199] Starting module "default" running at: http://localhost:8080
INFO     2017-03-21 15:07:38,373 admin_server.py:116] Starting admin server at:

http:// localhost:8000 にアクセスして、ローカルApp Engine管理者にアクセスできますコンソールおよびデータストアエンティティの編集/削除。

実稼働環境では、これも役立つ場合があります(またはセキュリティの悪夢です)。

# will DELETE the database use http://localhost:8083/deletemodels?force=true
class DeleteModels(webapp.RequestHandler):
    def get(self):

    def dMsg(msg):
      self.response.out.write(msg + '\n')
    n = self.request.get('force')
    if n:
      dMsg('clearing YourModelHere data....')
      for uc in YourModelHere.all():
               uc.delete()
               dMsg('.')
      dMsg('clearing YouNextModelHere data....')           
      for uc in YouNextModelHere.all():
               uc.delete()
               dMsg('.')     
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top