Để chuyển đổi kiểu ObjectId sang String trong MongoDB, bạn sử dụng phương thức .toString() trực tiếp trên đối tượng ObjectId. Điều này thường cần thiết khi so sánh, hiển thị hoặc truyền ID qua API.
1. Tạo bộ sưu tập và chèn dữ liệu
> db.demo52.insertOne({ "StudentName": "Chris" });
{ "acknowledged": true, "insertedId": ObjectId("5e27129bcfb11e5c34d89910") }
2. Xem dữ liệu (ObjectId mặc định)
> db.demo52.find();
Kết quả:
{ "_id": ObjectId("5e27129bcfb11e5c34d89910"), "StudentName": "Chris" }
3. Chuyển ObjectId sang String
> ObjectId("5e27129bcfb11e5c34d89910").toString();
"5e27129bcfb11e5c34d89910"
4. Kiểm tra kiểu dữ liệu
> typeof ObjectId("5e27129bcfb11e5c34d89910").toString();
"string"
Ứng dụng thực tế:
- Trong aggregation:
{ $toString: "$_id" }(MongoDB 4.0+) - Khi trả về JSON cho frontend, ObjectId không phải kiểu JSON chuẩn, cần convert sang string.
- So sánh ID từ request (string) với ID trong DB (ObjectId).