問題タブ [gql]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
1699 参照

google-app-engine - 式の一部を解析できませんでした:AND

これが基本であることは知っていますが、GQLで機能するwhere句にANDが含まれるselectステートメントを取得できません。私はこれまで問題を煮詰めました

SELECT*FROMエンティティWHEREacctName=='Company 1'AND acctID == 87896657

私は得る

式の一部を解析できませんでした:AND acctID == 87896657

ANDの順序を変更すると、2番目の項目acctNameにメッセージが表示されます。それぞれを単独で使用してselectを実行すると、正常に機能します。これはすべて、問題がANDにあることを示しています。GQLはANDをサポートする必要がありますよね?

助けてくれてありがとう!

0 投票する
1 に答える
540 参照

python - 特定のユーザーのエントリのみを取得するようにすべての db クエリを設定する方法はありますか、またはアプリ全体の各クエリに「AND ユーザー...」を含める必要がありますか?

ユーザーが商品を入力して比較できるアプリを作成しました。私はスケーリングと複数のユーザーを考慮する必要がある時点にあり、ユーザーに作成したアイテムのみを表示したい (データベース全体ではなく、ある時点でオプションになる可能性がありますが、今のところ各ユーザー)独自のリストを作成する必要があります)。

アプリ全体のすべてのクエリで、「作成者」フィールドが特定のユーザー (ログイン ユーザー) に設定されたエントリのみが返されるようにする既定の/推奨される方法はありますか? または、すべてのクエリを「AND author...」タイプのフィルターで更新する必要がありますか? これは名前空間の目的ですか?

Google App Engine で Python を使用しています。

0 投票する
2 に答える
765 参照

google-app-engine - GAE アプリケーションと GQL

次の情報 (NameOfWebSite、DateTimeofVisit) を収集するアプリケーションを作成する必要があります。その後、定義された期間 (月、週、年) ごとの訪問数に関する情報を、期間ごとの訪問数で並べ替えて受け取りたいと考えています。例えば:

www.google.com 定義された期間あたり 2345 回の訪問

www.yahoo.com 定義された期間ごとに 1254 回の訪問

www.abracadabra.com 定義された期間ごとに 5 回の訪問

GQL を使用してこれを行うことはできますか? 通常のSQLでは、次のようになります

DateTimeofVisit>XXX および DateTimeofVisit < YYY である NameOfWebSite による TABLE グループから NameOfWebSite、count(*) を選択します。

このロジックを GAE と GQL の観点からどのように実装するのが良いでしょうか?

0 投票する
1 に答える
135 参照

python - 最も条件に一致するエンティティを検索

私はいくつかのプロパティを持っています、としましょう

データストア内の多数のエンティティのうち、ほとんどのプロパティに一致するエンティティを取得するにはどうすればよいですか? もちろん、私はできる:

しかし、正確なプロパティを持つそのようなエンティティが存在しない場合、結果は得られません。少なくとも 2 つのフィルターが一致するエンティティを取得するにはどうすればよいですか? それでもうまくいかない場合は、1 つのフィルター..? 値の類似性などを計算する必要はありません。可能な限りほとんどのフィルターが一致するエンティティを指定してください。

0 投票する
2 に答える
431 参照

performance - GQLで何を好むか; StringListPropertyまたはListProperty?

私は多対多の関係を持つアプリケーションを構築しています。エンティティ「画像」のアイテムは、任意の数のギャラリー(「ギャラリー」)にリンクできます。そしてもちろん、ギャラリーは任意の数の写真を保持できます。

したがって、ここでのGoogleの提案に従って、「Gallery」の外部キーを保持する「Picture」のリストを使用します。これはBigTableのアプローチです。

(古いスタイルのリレーショナルDBアプローチでは、「Picture」と「Gallery」の間にテーブル/エンティティを配置します。)

これが私の質問です:キーを保存するとき、「画像」の「StringListProperty」に行くべきですか、それとも「ListProperty(db.Key)」の方がうまくいくでしょうか?

StringListに見られる理由の1つは、Keys以外の値も格納できるということですが、一方で、それはとにかくダーティなスタイルになります。しかし、インデックスが爆発するため、Googleがエンティティで複数のリストを使用しないことを提案したこともかなり確信しています。だから、これは私を裏口に保つでしょう。

タイプが「Key 」のListPropertyの場合、値が実際にKeyである場合、1つのポイントは自動検証になります。

文字列をキーに、またはその逆に変換するのは非常に簡単なので、ここでリストタイプの1つを好む理由はわかりません。

パフォーマンスの問題に関しては、これをどのようにテストできるかわかりませんが、これがこの決定の主な要因になるようです。

あなたの入力に興味があります。特に誰かがこれでパフォーマンスをテストしたか、とても親切でそれをするなら。

乾杯、//ハンネス

0 投票する
1 に答える
615 参照

google-app-engine - エンティティキーを使用してデータストアからエントリを取得する

私のデータストアには次のものが含まれています。id/Name id = 30001

私は試しました:SELECT * FROM Skill WHERE Id=30001そして他のいくつかのバリエーション。
エンティティキーを使用してエントリを取得するにはどうすればよいですか?

0 投票する
1 に答える
228 参照

python - listproperty 内に特定の要素を含むすべてのモデルのデータストアのクエリ

ねえ、私はこのようなモデルを持っています:

リストに複数のカテゴリを関連付けることができる場所 (したがって、list プロパティ)。これらのカテゴリを使用してカテゴリ ページを作成したいので、カテゴリ属性内に特定のカテゴリを持つすべてのリストを取得するために使用できるクエリが必要です。私はいくつかの異なるアプローチを試しましたが、どれもうまくいかないようです。このようなクエリはありますか?(以下は機能しません):

そうでない場合は、次のようなことをする必要があります。

しかし、これは信じられないほど遅くなるか、何らかの形で壊れてしまうように感じます...

何か案は?ありがとう!

トム

アップデート:

おっと、解決しました!興味のある人は、次のようなクエリを使用できます。

これは、カテゴリ内に「哲学」を含むすべてのリストに一致します。

0 投票する
1 に答える
1038 参照

python - GQL: 複数値プロパティの不等号フィルタ

GAE のデータストアを少しいじってみると、多値プロパティで不等式フィルター '!=' を使用して結果をフィルター処理する適切な方法を考えられないことがわかりました。

問題は、このクエリがe1e2の両方を返すことですが、必要なのはe2だけです。

これは、不等式フィルターが ANY (少なくとも 1 つの値が != 'tag2' である場合は TRUE) として評価されるために発生すると思います。ALL にフィルターを適用する方法はありますか? (すべての値が != 'tag2' である場合は TRUE)?

GAE のデータストアがリレーショナルではないことは知っていますが、この種のクエリを巧みに解決/考える方法を知りたいです。

ありがとう ;)

0 投票する
1 に答える
434 参照

google-app-engine - GAE からデータを取得する jQuery オートコンプリート タグを実行する最良の方法は何ですか?

ここには、基本的にjqueryuiからのものがあります。はい、生であり、例では JSON を使用してオートコンプリート プロセスを処理します。私のバックエンド開発者は GAE で python を使用しており、通常は gql ダイレクトからデータを引き出して Web ページにダンプするだけです。スタックオーバーフローと同じようにタグを作成するには、この関数が必要です。ここでの私の状況でのベストプラクティスは何ですか?

0 投票する
1 に答える
677 参照

google-app-engine - WHERE の GQL エラー

例外が発生します:

このクエリはうまく機能しますが、次のようになります。

そしてこれも:

完全なコード: