나는 잠시 동안 mongo를 사용하고 있습니다. (파이썬, mongo 2.4.4 64 비트, OS X 10.8.2, pymongo 2.5.2, python 2.7.2), 나는 이상한 행동을 관찰했다.InvalidDocument : 객체를 인코딩 할 수 없습니다 : ObjectId ('51861bc79bb6550f2b98be23')
개체를 인코딩 할 수 없습니다 : ObjectId가을 ('51861bc79bb6550f2b98be23')
... "/ 사용자/nutrina/www /에서 env_pdf_admin_apache/lib 디렉토리 모음에 문서를 삽입 할 때 가끔 예외를 다음 던졌습니다 /python2.7/site-packages/pymongo/collection.py ", 줄 266, 저장 return self.insert (to_save, 조작, 안전, check_keys, ** kwargs) 파일 "사용자/nutrina/www/env_pdf_admin_apache/lib/python2.7/site-packages/pymongo/collection.py ", 줄 357, 삽입 continue_on_error, self .__ uuid_subtype), 안전) InvalidD ocument는 : 객체를 인코딩 할 수 없습니다 ObjectId가을 ('51861bc79bb6550f2b98be23')
나는 이런 일이 왜 아무 생각이 없습니다. 다른 사람이이 오류가 발생 했습니까? 아니면 누군가가 원인을 알 수 있습니까?
업데이트 : 내가 저장하려고 목적은 구조 다음과 같습니다
{
'is_open': true, // boolean
'data': {
'user_id': ObjectId(...), // ObjectId
'user_type': 1, // Integer
}
}
오류는 필드 * USER_ID의 *에 대해보고,하지만 난 값이 유효한 ObjectId가 있음을 확신한다. 이것은 다른 콜렉션 (사용자)의 오브젝트 (사용자)의 '_id'입니다. 그리고 저장 조작은 대부분 동일한 시간에 성공합니다.
덕분에, 제럴드
저장할 개체를 다른 개체로 공유 할 수 있습니까? 어떤 유형의 데이터가 포함되어 있습니까? – WiredPrairie
여기 좀 봐 http://stackoverflow.com/a/18414699/535962 – lovesh
문제의 설명을 업데이트했습니다. @lovesh : 나는 그 문제가 관련 있다고 생각하지 않는다. – nutrina