問題タブ [flask-mongoengine]

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 投票する
0 に答える
461 参照

mongodb - DictField の動的キーに対する mongoengine フィルター

次のような MongoDB ドキュメントが生成されます。

mongoengine を使用していますが、dict フィールドのキーをクエリできません。

たとえば、私は物事のリストを持っています thing_list = ['foo', 'faa', 'baz', 'xyz']

UserThingsそして、これらのいずれかを含むすべてをフィルタリングしたい...

何かのようなもの .. UserThings.objeect.filter(things__in=thing_list)

間違いなくこれはうまくいきません。dictfield の変数/動的キーでフィルタリングを実行する方法はありますか? そうでない場合は、pymongo/raw クエリを使用して実行できますか?

0 投票する
0 に答える
318 参照

mongodb - MongoDB で 2D 配列 (マトリックス) を表す - 各セルに対してクエリ可能

たとえば、このhttps://www.mathsisfun.com/tables.htmlに似た乗算表を取ります

ここで、2 つの数値の乗算を調べたいと思います。7 と 9 としましょう。最初の列 (または 7 行目) で 7 を探し、9 列目になるまでその行をトラバースします。その値を選択するだけです。それはまさに私がやりたいことですが、mongoengineそれをどのように表現するのが最善かわかりませんI can query easily given both values(i.e. 7 and 9)

SQL でそれを行う方法を知っている データベースで 2 次元データ行列を表現する方法

NoSQL は、スキーマを簡素化し、簡単にクエリを実行できる他の利点を提供するかどうか疑問に思っています。

使用ListFieldできますが、それについて照会できるとは思いませんか? つまり、リスト全体をトラバースすることなく、特定の要素を効率的に見つけることができます。

PS: 乗算表は単なる例です。つまり、それらは 2 つの都市間の距離の行列である可能性があります。その場合、クエリで提供する 2 つの入力は、city1 と city2 になります。例えば

0 投票する
4 に答える
1713 参照

python - Mongoengine 属性エラー

Flask-Mongoengine と Flask-Login を使用してアプリの承認をコーディングしようとしています。そして、私はこの奇妙なエラーを受け取ります:

私のmodels.py:

クラスを超越しようとしましたが、役に立ちませんでした。

https://github.com/MongoEngine/flask-mongoengine/issues/156

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

python - GeoQuery の Mongo DB 半径単位

MongoDB クエリが使用する単位を調べようとしています...

次のクエリがあります。

maxDistance 内に 10 メートルなど、メートルを使用したいと思います。

しかし、ドキュメント(https://docs.mongodb.com/manual/reference/operator/query/center/#op._S_center)では、

「座標系で使用される単位で測定された円の半径」

どこにも「単位」への参照が見つかりませんか?

私は参照用にhttp://docs.mongoengine.org/guide/querying.htmlを使用しています。

単位は何ですか?

単位を設定できますか?

ありがとう

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

python - Heroku mLab MongoDB 管理者ユーザーが Flask アプリケーションでのクエリを許可されていません

Flask アプリケーションの一部であるこのコード セクションがあります。を使用してflask_mongoengineいます。

Config.modelsDocument を拡張するクラスです。

を呼び出すとConfig.objects、エラーが返されます:

admin ユーザーでログインしています。クエリの権限がないのはなぜですか? また、クエリを実行する権限を自分に付与するにはどうすればよいですか?

PyMongo を使用する別のアプリケーションで問題なくクエリを実行できるのに、Flask で機能しないのはなぜですか?

0 投票する
0 に答える
662 参照

pymongo - 参照フィールドを持つ埋め込みドキュメントの mongoengine の遅いシリアル化

約 500 レコードの小さな DB があります。フォームを現在のバージョンと共に Record コレクションに保存するバージョン管理スキームを実装しようとしています。理想的には、フォームをバージョン番号とともに埋め込みドキュメントに保存して、物事をきちんと整頓したいと考えています。

このようにして、レコードを思い出すと、その時点で使用されていたフォームとバージョンを取得できます。いくつかのタイミング テストの実行:

すべてのレコードのクエリ時間はRecord.objects.select_related()約 1.12 秒で妥当であることがわかりましたが、JSON 転送を目的としたシリアル化は約 24.1 秒で非常に高価であることがわかりました!

EmbeddedDocument の使用を削除してわずかな変更を加えると、次のようになります。

同じテストを実行すると、クエリ時間は約 1.36 秒とほとんど変わらないことがわかりましたが、シリアル化時間は 24 倍改善されて 1.14 秒になりました。埋め込みドキュメントを使用すると、シリアル化時間に大きなペナルティが発生する理由が本当にわかりません...? 埋め込みオブジェクトでの逆参照はより困難ですか?

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

python - フラスコ mongoengine を使用してリモート MongoDB サーバーに接続できません

Flask-mongoengine を使用してリモート サーバーでホストされている MongoDB クラスターに接続しようとすると、次のエラーがスローされます。

以下は私が使用しているコードです:

私のconfig.pyファイルには以下が含まれています:

しかしpymongo、次のコードを使用して接続できます。

解決策を見つけようとしましたが、これまで誰も問題に遭遇したことがないようです。MongoDB の Atlas ソリューションを使用して MongoDB クラスターをホストしています。