복붙노트

[MONGODB] MongoDB를에 OBJECTID에 문자열로 변환

MONGODB

MongoDB를에 OBJECTID에 문자열로 변환

나는 CodeIgniter의 및 MongoDB를를 사용하여 API를 개발하고있다. 데이터베이스의 일부 지역에서 나는 OBJECTID 형식으로 이미지의 ID를 저장 한 대신 문자열. 지금은 문자열 형식의 ID를 가지고 나는 그것을 사용하여 데이터베이스를 조회 할 필요가있다.

어떻게 그래서 OBJECTID에 I "변환"문자열 나는 ​​쿼리를 할 수있는 수?

이것으로부터:

34234234234234234234

이에:

ObjectID("34234234234234234234")

최신 정보

나는 해결책을 찾아 냈다. 다만이 새로운 MongoId ( '34,234,234,234,234,234,234')를 할;

해결법

  1. ==============================

    1.http://api.mongodb.org/java/2.6.5/org/bson/types/ObjectId.html

    http://api.mongodb.org/java/2.6.5/org/bson/types/ObjectId.html

    여기에서, 당신은 하나의 문자열 매개 변수가있는 생성자 ObjectId가 있다는 것을 알 수있다. 그래서, 당신에게 도움이 될 수없는 이유는 무엇입니까?

  2. ==============================

    2.당신은 당신의 몽고에서 ObjectId가 기능을 필요로합니다.

    당신은 당신의 몽고에서 ObjectId가 기능을 필요로합니다.

    ObjectId = require('mongodb').ObjectID;
    

    그럼 당신은 그렇게 사용할 수 있습니다 :

    ObjectId("34234234234234234234")
    
  3. ==============================

    3.몽구스를 사용 :

    몽구스를 사용 :

    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
    
  4. ==============================

    4.당신이 유성을 사용하는 경우

    당신이 유성을 사용하는 경우

    var id = new Mongo.ObjectID("34234234234234234234");
    
  5. ==============================

    5.이상 사용

    이상 사용

    var mongodb = require(‘mongodb’); //this might have been defined at the beginning of your code.
    //now use it
    query = {_id:mongodb.ObjectId('569ed8269353e9f4c51617aa')};
    

    나머지는 동일합니다.

  6. ==============================

    6.당신은 지금 MongoDB를 4.0 이상에 OBJECTID로 문자열을 변환 할 수 있습니다. 문자열 ID로 변환하는 새로운 기능은 OBJECTID에있다

    당신은 지금 MongoDB를 4.0 이상에 OBJECTID로 문자열을 변환 할 수 있습니다. 문자열 ID로 변환하는 새로운 기능은 OBJECTID에있다

    여기에는 문서 $ toObjectId를 볼 수 있습니다

  7. from https://stackoverflow.com/questions/7825700/convert-string-to-objectid-in-mongodb by cc-by-sa and MIT license