問題タブ [mongoalchemy]

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

python - MongoAlchemy の洗練された文字列クエリ

MongoDB の Python ドライバーの上にあるレイヤーである MongoAlchemy を学習しています。次のように MongoDB オブジェクトからマッピングされた Python クラスがあるとします。

そして、次のようにデータベースにクエリを実行します。

それは正常に動作しますが、大文字と小文字を区別しない名前 (「geronimo」と「Geronimo」の両方) をデータベースに照会するか、2 つの o を含むすべての名前を検索したいと考えています。query.filter(Person.name[1:] == 'eronimo')Person.name は文字列ではなく QueryField オブジェクトであるため、これは機能しません。

MongoAlchemy でこのような複雑なクエリを実行するにはどうすればよいですか?

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

python - MongoDB: Embedded users into comments

I cant find "best" solution for very simple problem(or not very)

Have classical set of data: posts that attached to users, comments that attached to post and to user.

Now i can't decide how to build scheme/classes

On way is to store user_id inside comments and inside.
But what happens when i have 200 comments on page?
Or when i have N posts on page?
I mean it should be 200 additional requests to database to display user info(such as name,avatar)

Another solution is to embed user data into each comment and each post.

But first -> it is huge overhead, second -> model system is getting corrupted(using mongoalchemy), third-> user can change his info(like avatar). And what then? As i understand update operation on huge collections of comments or posts is not simple operation...

What would you suggest? Is 200 requests per page to mongodb is OK(must aim for performance)?

Or may be I am just missing something...

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

python - MongoAlchemy のインデックスで TTL を設定する

どういうわけかexpireAfterSecondsMongoAlchemyでコレクションのインデックスを指定できますか、または次のようにハックする必要があります:

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

python - Flask-MongoAlchemy で動的ドキュメントを作成する

個人的なプロジェクトで Flask-MongoAlchemy を使用しています。解析して mongodb ドキュメント エントリにしたい .cfg 入力ファイルがいくつかあります。残念ながら、.cfg ファイルはフラットなので、各ファイルから複数の異なるドキュメントを作成したいと考えています。使用する構造を 1 か所 (別の .cfg ファイル) で定義し、1) 解析中に入力ファイルをこの形式に変換し、2) この構造を使用して MongoAlchemy ドキュメント クラスを作成したいと考えています。私は #2 だけに問題がありますが、両方の目標を解決する代替の実装を受け入れています。

これが私の入力 .cfg ファイルです。これを複数のmongodbドキュメントにしたいと思います。

これは、構造を定義する documents.cfg です。値は、タイプを区別するための数値です。

ここにクラス定義があります

documents.cfg を解析して、次の 2 つの辞書を作成します。

次に、これらをそれぞれの init() メソッドに渡します

これにより、属性が正常に追加されます。ただし、Bar (または Baz) のインスタンスを作成すると、このエラーが発生します。

私の推測では、これは MongoAlchemy フィールドがインスタンス属性ではなくクラス属性でなければならないという事実に関係していると思います。何か助けはありますか?

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

python - Flask内のフィールド値を取得-MongoAlchemyドキュメント

ドキュメントを調べて、Googleを広範囲に検索しましたが、問題の解決策が見つかりませんでした。
これは私のreadRSS関数です(「get」はKenneth Reitzのリクエストモジュールのメソッドであることに注意してください)。

これは私のMongoAlchemyクラスの1つです。

ご覧のとおりreadRSS、クラスの関数内で関数を呼び出さなければならなかったので、フィールドとselfに依存しているため、を渡すことができました。 これを行う別の方法があるかどうかを知りたいので、戻り値をドキュメントのフィールドに保存できます。関数の戻り値を関数内の変数に割り当てようとしましたが、どちらも機能しませんでした。 feednamelocation
readRSSFeedreadRSS__dict__

アプリで機能を使用していますが、結果をドキュメントに保存して、サーバー(RSSフィードを取得しているサーバー)の負荷を軽減したいと考えています。

私がやろうとしていることをする方法はありますか、それとも私はこれについてすべて間違っていますか?

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

python - MongoAlchemy 埋め込みドキュメント

mongo alchemy を使用してドキュメントが埋め込まれたモデルを作成する方法を知っている人はいますか? ドキュメントを検索しましたが、それを行う例はありません。

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

python - MongoAlchemy ドキュメントに mongo_id を保存しますか?

mongo_id をオブジェクトとして MongoAlchemy フィールドに格納することは可能ObjectIdですか? 手動で定義したドキュメントの内部に保存できましたObjectIdが、MongoAlchemy ORM のコンテキストで ID の文字列値を保存することに制限されているようです。

これが私のコードの一部です:

mongo_id をObjectIdオブジェクトとしてGroupメソッドに格納できることがわかりますadd_participant(MongoAlchemy ORM を介してではなく手動でドキュメントを作成しているため)。db.StringField.

ObjectIdオリジナルを に保存しようとしましdb.AnythingFieldたが、それでフィルタリングできませんでした。

ObjectIdを MongoAlchemy フィールドに格納し、それをデータベース クエリでフィルタリングできるかどうかは誰にもわかりませんか?

ありがとうございました!

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

python - MongoAlchemy StringField が予期せず QueryField に置き換えられましたか?

MongoAlchemy を使用しているときに奇妙なバグに悩まされています。

私はname = db.StringField()自分のParticipantモデルに を持っています。ほとんどの場合は問題なく動作しますが、何らかの理由でフィールドが . で上書きされることがありQueryFieldます。モジュールからクラスを再ロードParticipantすると、しばらくは正常に動作しますが、再び壊れます。

これが発生した端末セッションを次に示します。

私は MongoDB を初めて使用し、これを本番環境に導入することに非常に神経質になっています。舞台裏で何が起こっているのか知っている人はいますか?

ジェフのコメントに応えて、クエリの外で問題が発生する別のセッションがあります。

この最後のセッションに取り組んでいる間、ある時点でファイルを保存したことを除いて、他に何もしたことを覚えていません。時間に関連する要素があるようです。通常、インタプリタをしばらく離れて戻ってきた場合に発生しますが、これを引き起こしたと特定できる特定の動作はありません。

また、参考までに:

最後にname、関数にフィールドを追加して__init__いくつかのオブジェクトをインスタンス化しようとすると、次のエラーが発生します (以前のバージョンでは init に引数が渡されませんでした)。