[解決済み] mongooseを使ってmongodbにドキュメントを挿入し、生成されたidを取得する方法は?
2022-03-11 19:45:09
質問
mongooseを使ってmongodbを操作しています。今、テストのために、ネイティブ接続でmongodbにデータを挿入したいと思っています。
しかし、問題は挿入後に生成されたIDを取得する方法です?
試してみました。
var mongoose = require('mongoose');
mongoose.connect('mongo://localhost/shuzu_test');
var conn = mongoose.connection;
var user = {
a: 'abc'
};
conn.collection('aaa').insert(user);
console.log('User:');
console.log(user);
でも、印刷される。
{ a: 'abc' }
はありません。
_id
フィールドがあります。
解決方法は?
を生成することができます。
_id
を自分で作ってデータベースに送ります。
var ObjectID = require('mongodb').ObjectID;
var user = {
a: 'abc',
_id: new ObjectID()
};
conn.collection('aaa').insert(user);
これは、私がMongoDBで気に入っている機能のひとつです。互いにリンクしているオブジェクトをたくさん作る必要がある場合、アプリとデータベース間で何度も往復する必要はありません。アプリの中ですべてのIDを生成して、あとはすべてを挿入するだけです。
関連
-
[解決済み】MongoError: 最初の接続でサーバー [localhost:27017] への接続に失敗しました。
-
[解決済み】MongoDBシェルですべてのコレクションを一覧表示するには?
-
[解決済み] mongodの書き込みに関するデフォルトの懸念はどのバージョンにありますか?
-
[解決済み] MongoDB: 大文字小文字を区別しないクエリを作ることはできますか?
-
[解決済み] mongodb サービスが開始されない
-
[解決済み] コマンドラインからMongoDBデータベースを削除する方法を教えてください。
-
[解決済み] mongodbの最後のN個のレコードを取得する方法は?
-
問題 --- MongoDB --- 複数のデータソースを設定するとエラーが報告される 一致するBeanは1つだが、2つ見つかった
-
[解決済み】Dockerコンテナのディスク使用量を分析する方法
-
[解決済み】MongoDBとMongooseの違いについて
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】MongoError: 最初の接続でサーバー [localhost:27017] への接続に失敗しました。
-
[解決済み】SocketException: アドレスはすでに使用中です。
-
[解決済み] mongod.serviceの再起動に失敗しました。ユニット mongod.service が見つかりませんでした
-
[解決済み] mongodb サービスが開始されない
-
問題 --- MongoDB --- 複数のデータソースを設定するとエラーが報告される 一致するBeanは1つだが、2つ見つかった
-
[解決済み】MongoDBでデータのバージョニングを実装する方法
-
[解決済み】MongoDB: 1つのフィールドですべてのドキュメントを更新する
-
[解決済み】2つの異なるコレクションで重複したMongo ObjectIdが生成される可能性?
-
[解決済み】MongoDBのすべてのドキュメントのフィールド名を変更するにはどうすればよいですか?
-
[解決済み] MongoDb の 2 つのフィールドを比較するクエリ条件