반응형
문자열을 개체로 변환MongoDB의 ID
저는 Codeigniter와 MongoDB를 이용하여 API를 개발하고 있습니다.데이터베이스의 일부에서 개체에 이미지의 ID를 저장했습니다.문자열 대신 ID 형식입니다.이제 문자열 형식의 ID를 얻었고 그것을 사용하여 데이터베이스를 쿼리해야 합니다.
문자열을 개체로 "변환"하는 방법제가 질문을 할 수 있는 신분증이요?
이로부터:
34234234234234234234
대상:
ObjectID("34234234234234234234")
몽구스 사용:
var mongoose = require('mongoose');
var objectId = mongoose.Types.ObjectId('569ed8269353e9f4c51617aa');
기본 드라이버 사용(https://stackoverflow.com/a/21076589/3377073)
var ObjectId = require('mongodb').ObjectId;
doc._id = new ObjectId(doc._id); // wrap in ObjectID
당신은 당신의 mongo에서 ObjectId 기능을 요구하기만 하면 됩니다.
ObjectId = require('mongodb').ObjectID;
그런 다음 다음과 같이 사용할 수 있습니다.
ObjectId("34234234234234234234")
유성을 사용하는 경우
var id = new Mongo.ObjectID("34234234234234234234");
이제 mongodb 4.0 이상에서 문자열을 objectId로 변환할 수 있습니다.문자열 ID에서 개체로 변환할 새 기능이 있습니다.이드
여기서 $toObjectId 설명서를 볼 수 있습니다.
또는 더 나은 사용
var mongodb = require(‘mongodb’); //this might have been defined at the beginning of your code.
//now use it
query = {_id:mongodb.ObjectId('569ed8269353e9f4c51617aa')};
나머지는 똑같습니다.
(질문에서 발췌)
해결책을 찾았어요이렇게 하면 됩니다.
new MongoId('34234234234234234234');
import { ObjectId } from 'mongodb'
const query = {"_id":ObjectId(req.params.productId)}
mongo DB 버전 v3.6.3
MongoDB ObjectId에 대한 문자열 입력을 고속 컨트롤러 코드에 저장하는 방법
const mongoose = require('mongoose');
var ObjectId = require('mongodb').ObjectId;
user: mongoose.Types.ObjectId(req.body.user)
console.log(user, typeof(user))
언급URL : https://stackoverflow.com/questions/7825700/convert-string-to-objectid-in-mongodb
반응형
'programing' 카테고리의 다른 글
템플릿 기반 폼과 반응형 폼의 실질적인 차이점은 무엇입니까? (0) | 2023.05.21 |
---|---|
Windows 2012 Server에서 Azure 배포가 Windows 2008 Server보다 느린 이유 (0) | 2023.05.16 |
유성 문서의 메시지 수 예제는 어떻게 작동합니까? (0) | 2023.05.16 |
MVC에서 PDF를 브라우저로 되돌리는 방법은 무엇입니까? (0) | 2023.05.16 |
LINQ에서 리스트 평탄화 (0) | 2023.05.16 |