복붙노트

[MONGODB] 어떻게 몽구스 문서 내에서 자유로운 형태의 JSON 데이터를 수 있도록?

MONGODB

어떻게 몽구스 문서 내에서 자유로운 형태의 JSON 데이터를 수 있도록?

그들은 MongoDB에 저장됩니다 전에 부분적으로 검증 모델 몽구스 ODM을 사용하고 있습니다.

이 문서의 특정 부분이 검증되지 않도록 몽구스의 도식을 완화 할 수 있습니까? 내가 다음에 시도했다 :

var MySchema = new Schema({
    user_id: { type: Schema.ObjectId, ref: 'User' },
    freeform_data: {},
});

예를 들어 나는 내용을로 설정 한 경우 :

{
   user_id: '123456',
   freeform_data: {
      dataitem1: 'a',
      dataitem2: 'b',
      items: [ 1, 2, 3, 4 ]
   }
}

만 USER_ID 완벽하게 이해 보안 현명하게하는, 저장됩니다.

어떻게이 필드 I 비활성화 몽구스의 유효성 검사를 할 수 있습니까?

난 단지 내가 보안에 대해 걱정하지 않도록 (난 그냥 프로토 타입을 원하는) 지금 목적으로 프로토 타입이 응용 프로그램을 사용하고 있습니다.

해결법

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

    1.당신이 freeform_data 같은 혼합 필드의 내용을 수정하는 경우, 당신은하지 않습니다 그것을 저장 수정 된 문서 또는 () 호출 저장 이후에 markModified (경로)를 호출하여 그 값을 변경 한 것을 몽구스에게 통지해야합니다.

    당신이 freeform_data 같은 혼합 필드의 내용을 수정하는 경우, 당신은하지 않습니다 그것을 저장 수정 된 문서 또는 () 호출 저장 이후에 markModified (경로)를 호출하여 그 값을 변경 한 것을 몽구스에게 통지해야합니다.

    예를 들면 :

    user.freeform_data = { foo: 'bar' };
    user.markModified('freeform_data');
    user.save();
    
  2. ==============================

    2.Mongeese : 몽구스 다중 데이터베이스 도우미 / 해킹 모듈 https://github.com/donpark/mongeese

    Mongeese : 몽구스 다중 데이터베이스 도우미 / 해킹 모듈 https://github.com/donpark/mongeese

    면책 조항 : 나는 같은 응용 프로그램에서 두 MongoDB의 인스턴스에 연결하는보고 포기했다. 그래서 나는 그것을 시도하지 않았습니다.

  3. from https://stackoverflow.com/questions/10403450/how-to-allow-free-form-json-data-within-mongoose-documents by cc-by-sa and MIT license