3

簡単なプロジェクトを作成して確認したチュートリアルからindex.yaml、クエリを実行するとファイルが自動生成されます。私がさらに観察したことは、それまで管理コンソール ( http://localhost:8080/_ah/admin/datastore) にデータストアが表示されないことです。

私の問題は次のとおりです。データストア管理コンソールを使用してデータ/エンティティを手動で追加するプロジェクトがあります。Web サイトは、データを表示/取得するためだけに使用され、データ ストアにデータを追加するためではありません。

データを追加できるようにデータストアをコンソールに表示するにはどうすればよいですか?

はい、ブラウザを介して空のデータストアから取得してみてください。データを入力できるようにするためですindex.yaml。しかし、うまくいきません。

4

3 に答える 3

1

おそらく最も簡単な方法は、プロジェクト フォルダー内に小さな python スクリプトを作成し、スクリプトでエンティティを作成することです。一度使用する URL ハンドラーに割り当ててから、無効にします。

Python シェルから実行することもできます。デバッグには非常に便利ですが、一度設定する必要があります。 http://alex.cloudware.it/2012/02/your-app-engine-app-in-python-shell.html

本番環境で同じことを行うには、remote_api: https://developers.google.com/appengine/articles/remote_apiを使用します。

于 2012-12-03T20:13:08.040 に答える
0

On your development server you can use the interactive console to create/instantiate/save an entity, which should cause the entity class to appear in the datastore interface, like so:

from google.appengine.ext import ndb

class YourEntityModel(ndb.Model):
    pass

YourEntityModel().put()
于 2016-05-16T23:01:51.250 に答える
0

これは非常に奇妙な質問です。

の自動作成はindex.yamlローカルでのみ行われ、そのファイルを作成して AppEngine にアップロードするのに役立ちます。そのファイルがサーバー上にあると、そのファイルの自動作成または更新はありません。ドキュメントで説明されているように、関連するインデックスが既に index.yaml に存在しない限り、クエリを実行することはできません。

クエリを実行するにはインデックスが必要なため、手動で、または開発データストアに対して関連するクエリを実行して、そのファイルをローカルに作成し、アプリと共にアップロードする必要があります。

ただし、これはデータストア ビューアーが管理画面に表示されるかどうかとはまったく関係ありません。オンラインでは常に表示されますが、ストアに実際にインスタンスがあるエンティティの種類のみが表示されます。データストア ビューアはモデルについて何も認識せず、データストアに存在する種類のみを認識します。

于 2012-12-03T20:01:58.707 に答える