mongoose를 사용하여 노드의 문자열을 objectId로 변환하는 함수가 있습니까? 스키마는 무언가가 ObjectId라는 것을 지정하지만 문자열로부터 저장 될 때 mongo는 그것이 여전히 문자열이라고 알려줍니다. 예를 들어, 개체의 _id는 objectId("blah")
으로 표시됩니다.Node.js ObjectId 함수에 대한 Mongoose.js 문자열
101
A
답변
260
을 fromString했습니다
var mongoose = require('mongoose');
var id = mongoose.Types.ObjectId('4edd40c86762e0fb12000003');
10
당신은 이런 식으로 작업을 수행 할 수 있습니다
var mongoose = require('mongoose');
var _id = mongoose.mongo.BSONPure.ObjectID.fromHexString("4eb6e7e7e9b7f4194e000001");
편집 : 새로운 표준이 fromHexString보다는 당신과 같이 그것을 할 수
5
을 주석으로 판단, 당신은 찾고 있습니다 :
mongoose.mongo.BSONPure.ObjectID.isValid
또는
mongoose.Types.ObjectId.isValid
2
var mongoose = require('mongoose');
var _id = mongoose.mongo.ObjectId("4eb6e7e7e9b7f4194e000001");
스키마는 속성 유형의 ObjectId가 될 것으로 기대하고 경우에 나는이 방법 (일반적으로 인정 하듯이 내가 오랫동안 검색하지 않은)
mongoose.mongo.BSONPure.ObjectID.fromHexString
를 확인할 수 없습니다
+0
이것은 정확히 받아 들인 대답 –
+1
와 동일합니다.'mongoose.Types.ObjectId'와'mongoose.mongo.ObjectId'의 차이점에 대해 의견을 말씀해 주실 수 있습니까? 몽구스의 객체 속성은 다르지만 아래의 동일한 메소드를 참조 할 수 있습니다. 'Types'와'mongo'의 근본적인 메소드에 대해 의견을 말하십시오. – steampowered
2
전환이 함축되어있다. 적어도 이것은 4.7.8에있는 것처럼 보인다.
당신이 그러나, 더 플렉스 조금주는 같은 것을 사용할 수 있습니다
function toObjectId(ids) {
if (ids.constructor === Array) {
return ids.map(mongoose.Types.ObjectId);
}
return mongoose.Types.ObjectId(ids);
}
관련 문제
- 1. (문자열) 해시 함수에 대한 승수 선택
- 2. mongodb ObjectId 필드
- 3. 함수에 대한 C 포인터
- 4. node.js - 실시간 프로세스에 대한 평가
- 5. 함수에 대한 포인터와 WINAPI 함수에 대한 포인터의 차이점은 무엇입니까?
- 6. 함수에 대한 .net 4
- 7. member 함수에 대한 인수가
- 8. 함수에 대한 다중 선언
- 9. 멤버 함수에 대한 참조?
- 10. Getcontext 함수에 대한 질문
- 11. ahref를 통해 JavaScript 함수에 문자열 변수 전달
- 12. nHibernate - 클래스 내의 객체 또는 ObjectID
- 13. 함수에 대한 포인터에 대한 게터을 writting
- 14. JS 함수에 대한 보조 키 보내기
- 15. Lua의 내장 문자열 해시 함수에 액세스
- 16. 매개 변수 전달 : 함수에 문자열 값 전달
- 17. SelectParameter 함수에 문자열 전달 asp.net 웹 페이지
- 18. 멤버 함수에 대한 포인터를 저장
- 19. CImage 저장 함수에 대한 질문
- 20. CakePHP 동일한 'view'여러 함수에 대한
- 21. 복합 함수에 대한 TDD 접근법
- 22. SQL 함수에 대한 별도의 쿼리?
- 23. 함수에 대한 인자가 너무 많습니다.
- 24. SQLite에서 BETWEEN 함수에 대한 인덱스
- 25. Clojure의 함수에 대한 힌트 유형
- 26. CURLOPT_WRITEFUNCTION 멤버 함수에 대한 포인터
- 27. 스칼라의 제네릭 함수에 대한 도움말
- 28. 템플릿 함수에 대한 템플릿 인수
- 29. while 함수에 대한 제한 설정
- 30. 모든 함수에 대한 return 문
이 경우 약간 더 깨끗합니다. fromTime()을 수행하는 경우에만 mongo.BSONPure를 사용해야 할 수도 있습니다. – talentedmrjones
잘못된 문자열 인 경우 오류가 발생합니까? mongo id 필드에 대한 REST API에서 입력 유효성 검사를 수행하는 가장 좋은 방법을 찾고 있습니다. – Zambonilli
실제로 오류가 발생합니다. – Zambonilli