[解決済み] mongoose でネストした配列に値を入れる
2022-04-28 04:07:01
質問
例題のドキュメントで、quot;components"を入力するにはどうしたらよいですか。
{
"__v": 1,
"_id": "5252875356f64d6d28000001",
"pages": [
{
"__v": 1,
"_id": "5252875a56f64d6d28000002",
"page": {
"components": [
"525287a01877a68528000001"
]
}
}
],
"author": "Book Author",
"title": "Book Title"
}
これは私のJSで、Mongooseからドキュメントを取得するところです。
Project.findById(id).populate('pages').exec(function(err, project) {
res.json(project);
});
解決方法は?
Mongoose 4.5 はこれをサポートします。
Project.find(query)
.populate({
path: 'pages',
populate: {
path: 'components',
model: 'Component'
}
})
.exec(function(err, docs) {});
そして、複数のディープレベルに参加することができます。
2021年3月17日編集。これはライブラリの実装で、裏でやっていることは、別のクエリを作ってフェッチし、メモリ上で結合することです。しかし、これは動作しますが、私たちは本当に依存してはいけません。これは、あなたのデータベースがSQLテーブルのように見えるようにします。これはコストのかかる操作で、うまく拡張できません。結合を減らすようにドキュメントを設計するよう心がけてください。
関連
-
[解決済み] テスト
-
[解決済み】Node Version Manager のインストール - nvm コマンドが見つかりません。
-
[解決済み】Google spreadsheet api Requestに不十分な認証スコープがあった。
-
[解決済み】Passport.js - エラー: ユーザーのセッションへのシリアライズに失敗しました。
-
[解決済み] ReferenceError: describe は定義されていません NodeJs
-
[解決済み] Json Web Token verify() return jwt malformed
-
[解決済み] 配列のサイズが1より大きい文書を検索します。
-
[解決済み] 配列フィールドが空でない MongoDB レコードを検索する
-
[解決済み] Node.jsを完全にアンインストールして、最初から再インストールする方法 (Mac OS X)
-
[解決済み] 特定の値を含む配列で文書を検索する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Node.jsのエラーECONNRESETをデバッグするにはどうすればよいですか?
-
[解決済み] (node:63208) DeprecationWarning: collection.ensureIndex は非推奨です。代わりにcreateIndexesを使用してください [重複]。
-
[解決済み】モジュール 'internal/util/types' が見つかりません。
-
[解決済み】MongoDBのデータ/DBが見つからない
-
[解決済み】POSTできない/expressを使用するとエラーが発生する
-
[解決済み] MongoClient v3.0使用時、db.collectionが関数でない
-
[解決済み] Node.jsのホスト名/IPが証明書のaltnamesと一致しない
-
[解決済み] Passport JSのreq.isAuthenticated()はどのように実装されていますか?[クローズド]
-
[解決済み] nvm は npm config の "prefix" オプションと互換性がありません。
-
[解決済み] node.js - リクエスト - "emitter.setMaxListeners() "はどのように?