問題タブ [mongoose-populate]

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 に答える
814 参照

mongodb - ネストされた配列に ObjectID を設定する

スキーマ内に ObjectID の配列を設定しようとしています。私は同様の回答を見回しましたが、誰もが少し違ったやり方をしているようで、自分で解決策を見つけることができませんでした.

私のスキーマは次のようになります。

これまでのところ、このように入力しようとしていましたが、明らかに機能していません

母集団に関する質問のリストに追加するのは嫌いですが、多くの質問を調べましたが、解決策が見つかりませんでした。どんな助けでも大歓迎です!

編集:ドキュメントに管理者を追加する方法は次のとおりです

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

node.js - Mongoose モデルは、設定後に未定義のプロパティを取得します

基本的なリクエストで問題が発生しました。私が取得したマングース モデルのすべてのプロパティは、exec() コールバックで未定義です。

ここに私のスキーマがあります:

私の "friends" プロパティが、別のスキーマを参照するオブジェクトの配列であることはすでにお気づきでしょう。

ここに私のクエリがあります:

この Web サービスが「_user」を返す場合、各プロパティは適切に定義され、正しい値を持っています。問題は、未定義であるため不可能な _user.friends のみを返したいことです。

さて、ここに apiUtils.jsonResponse 関数があります:

そして cleanResults 関数:

問題が非同期に起因するかどうかを確認するためにタイムアウトを設定しようとしましたが、何も変わりませんでした。現時点では少し絶望的で、以前に同じ問題に遭遇したかどうかを知りたかったのですか?

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

mongodb - mongo mongoose populate サブドキュメントが null を返す

ノードとマングースのpopulateメソッドを使用して、クエリで2つのコレクションを「結合」しようとしています。以下は私のスキーマ設定です:

また、クエリがエラーなしで機能するように Stat mongoose モデルをセットアップしました (ただし、結果は期待したものではありません)。

次のクエリを実行しようとしました。

これにより正しい結果が得られ、ssss が正しく参照されます。結果はこのようなものです。

ただし、次のクエリでは間違った結果が得られます。

これにより、すべての結果で rating.stat = null が得られます。誰かが私が間違ったことを教えてもらえますか? ありがとう。

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

node.js - Mongoose populate の問題 - 配列オブジェクト

私のスキーマは以下の通りです

セクションスキーマ

ドキュメントスキーマ

Api.js

このようにすると、「ドキュメント」オブジェクトは [] になります。ただし、「populateArray.push('documents');」を削除すると、['5adfsadf525sdfsdfsdfssdfsd'] -- いくつかのオブジェクト ID (少なくとも)

ポピュレートする必要がある方法を教えてください。

ありがとう。

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

node.js - Mongoose 動的モデル、populate() を使用できません

私の CMS は Node.js + Express + Mongoose で書かれています。これはマルチサイト CMS であり、各サイトには独自のデータベースがあります。そのため、HTTP リクエストごとに接続を切り替えるように Mongoose を作成する必要がありました。私は解決策、または同じ状態の人を探しましたが、成功しませんでした. これが私の解決策です:

HTTP リクエスト:

BIZ コンポーネント (pagesBiz):

モデル (ページ)

それで、それはどのように機能しますか?ユーザーがログインすると、新しいユーザー セッションが作成され、セッション Cookie を介してユーザーにバインドされます (私は MongoStore + Express Session を使用します)。セッションには、Mongoose モデルを動的にインスタンス化するために使用されるデータベースの名前が含まれています。

それは完全に機能し、さまざまなサイトのユーザーが「衝突」のリスクなしに独自のデータベースから読み取ります。反対側では、関数の周りにセッション(またはデータベース名)を渡す必要がありますが、これが Node.js の方法だと思いますマルチスレッドのコンテキストで動作します。

唯一の問題は、populate メソッド () を使用すると、次のエラーが発生することです。

f:\www\rudsjs\node_modules\mongoose\lib\connection.js:625 throw new MongooseError.MissingSchemaError(name); ^ MissingSchemaError: モデル "User" のスキーマが登録されていません。populate (f:\www\rudsjs\node_modules\mongoose) で NativeConnection.Connection.model (f:\www\rudsjs\node_modules\mongoose\lib\connection.js:625:11) で mongoose.model(name, schema) を使用します。 \lib\model.js:2136:24) で Function.Model.populate (f:\www\rudsjs\node_modules\mongoose\lib\model.js:2101:5) で Object.cb (f:\www\rudsjs) \node_modules\mongoose\lib\query.js:1159:16) Object._onImmediate (f:\www\rudsjs\node_modules\mongoose\node_modules\mquery\lib\utils.js:137:16) で processImmediate [as _immediateCallback ] (timers.js:336:15)

プロセスは終了コード 8 で終了しました

これを使用して populate() 呼び出しの前にモデルをプリロードしようとしました:

ユーザー (セッション。データベース);

しかし、問題はMongooseがモデルをキャッシュする方法に関連しているようです(それは私のものではありません)、connection.jsを見ました

したがって、モデルをthis.base.models内に挿入する方法が必要です。何か考えはありますか?マルチサイト/マルチデータベース環境を実装するための特に優れたソリューションはありますか?

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

node.js - nullを返すマングースに移入させることはできません

別のページのモデルからのオブジェクト参照として measureUnit を保持する FoodItem スキーマを作成しようとしています。

これは、measureUnit が存在する MeasureTypesSchema です。MeasureTypes は、MetricsSchema 内に埋め込まれた配列ドキュメントです。MeasureTypesSchema のモデル (MeasureTypes) と MetricsSchema のモデル (Metrics) の両方をエクスポートしています。

これは、別のページにある MeasureTypes モデルからのオブジェクト参照として measureUnit を保持した FoodItemSchema です。

データを入力するときに測定単位の詳細を取得する必要があります。データを入力して、測定単位の詳細を取得する方法です。

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

node.js - Moogoose の自己参照が入力されない

私はマングースに次のような自己参照を持っています:

モデルの属性コンテンツを find で取得したい:

ここに私が得る結果があります:

subDocument ワードの other 属性が返されない理由がわかりません。何が間違っているのかを理解するのを手伝ってもらえますか?

ありがとう、

マキシム