問題タブ [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 に答える
1099 参照

django - mongoengine (Django) アプリで pymongo の AutoReconnect を処理する

モンゴエンジン 0.4、ジャンゴ 1.3.1、uwsgi 1.0.2.1

これで壁に頭をぶつけていました。mongoengine を使用する Django アプリがあります。mongodb サーバーは、私のアプリケーション サーバーとは別のボックスであり、特定のこと (ファイアウォール ルールの変更など) によって接続が失われます。

その場合、自動再接続の処理を実装して、これが発生した場合にアプリ全体がクラッシュしないようにしたいと思います。私はこれらの行に沿って何かを試していました: http://pastebin.com/HE8LSp5v (成功せずに動作するように変更しようとしましたが、これは私のコードではないことに注意してください)

そのペーストビンのコードは失敗を正常に検出し、再接続を試みますが、通常、for ループは 2 回以上反復されないため、表示されるのは、1 秒あたりの再接続試行回数であり、uwsgi スレッドごとに 1 回です.

そこで、コードを少し変更して ( https://gist.github.com/1723790に)、settings.py ファイルの一番下に追加しました。結果は uwsgi と dev サーバーで同じなので、簡単にするためにここでは dev サーバーを使用します。

開発サーバーを起動すると、次のようになります。

mongoengine が実行されている状態で、いくつかのリクエストを行うページにアクセスします。正常に動作します。次に、mongodb をシャットダウンし、ページを更新します。次のようなものが画面に出力されます。

これは、mongodb を再起動するまでこのように続きます。その時点で、ページは正しくレンダリングされ、問題なく動作します。ここで何が起こっているのか正確にはわからないので、このコードを本番環境に入れたくありません。ループに再帰している可能性があり、正しく戻ってくる AutoReconnect 例外をプルしていないようです。次に試みることは、各操作のスタックを調べて、何が起こっているかを正確に確認することかもしれません。

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

python - MongoEngineは既存のレコードを認識しません

MongoEngineでモデルを設定し、クエリを実行しようとしましたが(コレクションにはすでに数十のドキュメントがあります)、クエリセットは空です。

新しいドキュメントを追加すると、それらは後続のクエリに表示されますが、既存のドキュメントの兆候があります。

何が得られますか?参考までに、これが私のモデル定義です。

この質問にMongoEngineの作者自身が回答した場合は、事前にあなたが素晴らしいことを表明したいと思います。

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

python - Mongoengine リファレンスフィールドの問題

メンバーになるドキュメントタイプと同じドキュメントタイプを取る参照フィールドを作成したいのですが、機能せず、これを解決する方法がわかりません。私は何かを忘れましたか、それとも別の方法でそれをしなければなりませんか?

これは、「DatabaseUser」を使用したときに発生するエラーです。

これは、「self」を使用した場合のエラーです。

Windows 7 (64 ビット) で Python 2.7.2 (64 ビット) と Mongoengine v.5 を使用しています。

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

python - ListField(EmbeddedDocumentField) に対してクエリを実行できません

私は次のモデルを持っています

(name = "computer skill and level >5) のスキルを持つ Agent を検索したい

次のクエリを書きました。

エージェントがレベル = 3 の「コンピューター スキル」という名前のスキルを持ち、レベル = 10 の「英語スキル」という名前のスキルも持っている場合、このエージェントはクエリ結果に含まれます。

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

django - 派生クラスの参照をmongoengine ReferenceFieldsに保存するのは正しいですか?

基本クラスが渡されたコンストラクターに、参照フィールドへのサブクラス参照を割り当てることができるかどうかを知りたいです。例えば:

行 cr=d は有効ですか?

または、GenericReferenceField を使用する必要がありますか?

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

python - Mongoengine .. select_related() が機能しない

私は django と mongoengine の初心者なので、この問題に関して自分のコードが正しいかどうかわかりません..

query = Example.objects().select_related(max_depth=0) は、変数にメンバー フィールドを持たせるべきではありませんか? 私がコーディングするとき

しかし、結果はシムソンのようなメンバーの名前になります..

私の実際のアプリケーションでは、逆参照を使用したくありません..クラス(Document)にReferenceFieldがあり、「only()」、「exclude」メソッドを使用したくない場合でも..

クラス(Document)に独自のReferenceFieldがあっても、mongoengineが逆参照を使用しないようにするにはどうすればよいですか?

(私は、いつかそれを使用するために、将来のために ReferenceField を実装しました..しかし、今ではありません)

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

python - Mongoengine .. ListField の項目を逆にする

Comment EmbeddedDocument'date でコメント listfield の結果を元に戻すにはどうすればよいですか? 私の間違ったコード..のような..

embeddedDocumentの日付でListFieldを逆にする方法はありますか? またはリストフィールドを逆にするだけですか?

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

python - Mongoengine ... ListField にないものを照会しますか?

例えば..

この場合、次のようにタグ リストで値を見つけることができます。

タグが ['coding', 'x', 'y'] のような場合、ドキュメントは一致します...

しかし、私の質問は、リストフィールドにない値を見つける方法です。

私の間違ったコードは..

また

また

しかし..単に機能するわけではありません..

ListField に特定の値がないドキュメントをクエリするにはどうすればよいですか?

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

mongodb - 別のドキュメント内からドキュメントを更新する-mongoengine

コレクションに次のコードがあります。

内部find_another_document_and_update_it()では、データベースにクエリを実行してドキュメントAを取得し、次にAのカウンターをインクリメントします。次にfoo()、を呼び出した後find_another_document_and_update_it()、現在のドキュメントも保存します。たとえば、Bと言います。問題は、Aのカウンターがが呼び出されると実際に増加しself.save()、ドキュメントAは古い値にリセットされます。問題は、並行性の問題と、MongoDBがそれをどのように処理するかに関係していると思います。私はあなたの助けに感謝します。