program tip

몽구스로 ObjectId를 생성하려면 어떻게해야합니까?

radiobox 2020. 8. 3. 08:34
반응형

몽구스로 ObjectId를 생성하려면 어떻게해야합니까?


ObjectIdMongoose 로 MongoDB를 생성하고 싶습니다 . ObjectId몽구스 에서 생성자 에 액세스하는 방법이 있습니까?

  • 이 질문은 처음부터 새로운 것을 생성하는 것에 관한 것 ObjectId입니다. 생성 된 ID는 완전히 새로운 고유 ID입니다.

  • 또 다른 질문은 기존 문자열 표현ObjectId 에서 생성에 대해 묻습니다 . 이 경우 ID의 문자열 표현이 이미 있으며 (일반적으로 고유하지 않을 수도 있음) ID를로 구문 분석하고 있습니다 .ObjectId


에서 ObjectId생성자를 찾을 수 있습니다 require('mongoose').Types. 예를 들면 다음과 같습니다.

var mongoose = require('mongoose');
var id = mongoose.Types.ObjectId();

id새로 생성됩니다 ObjectId.

Mongoose # Types documentationTypes 에서 객체에 대한 자세한 내용을 읽을 수 있습니다 .


ObjectIdmongoose를 사용하여 다음과 같이 새로운 MongoDB를 만들 수 있습니다 .

var mongoose = require('mongoose');
var newId = new mongoose.mongo.ObjectId('56cb91bdc3464f14678934ca');
// or leave the id string blank to generate an id with a new hex identifier
var newId2 = new mongoose.mongo.ObjectId();

클라이언트 측에서 mongodb ID를 생성해야했습니다.

mongodb 소스 코드를 파고 들자 npm bsonlib를 사용하여 ObjectID를 생성한다는 것을 알았습니다 .

전체 mongodb / mongoose 패키지를 설치하지 않고 ObjectID 만 생성해야하는 경우 더 가벼운 bson라이브러리를 가져올 수 있습니다 .

const bson = require('bson');
new bson.ObjectId(); // 5cabe64dcf0d4447fa60f5e2

참고 : bson-objectid더 가벼운 npm 프로젝트 도 있습니다


ES6 구문 사용

import mongoose from "mongoose";

// Generate a new new ObjectId
const newId2 = new mongoose.Types.ObjectId();
// Convert string to ObjectId
const newId = new mongoose.Types.ObjectId('56cb91bdc3464f14678934ca');

참고 URL : https://stackoverflow.com/questions/17899750/how-can-i-generate-an-objectid-with-mongoose

반응형