메신저 JavaScript 및 Mongoose에 새로운 기능이 있습니다. 나는 몽구스를 통해 지속되기를 원하는 약간 이상하게 디자인 된 JSON으로 끝났다. , something_else, 뭔가 (아마도 다른 사람이 있습니다 항상 A1도 A2가되지 않음)도 다양하다 배열이없는 중첩 문서로 내 JSON에 대한 유효한 몽구스 스키마를 정의 하시겠습니까?
A1
{name : "a_string", a1 : {something : 'a_number', something_else : 'a_number'}, a2 : {...} }
는, A2 변수입니다 이이 JSON의 예입니다 다른 식별자 일 수 있습니다 (속성입니다).
아마도 이상한 JSON을 디자인 할 때 내 잘못이라고 생각 하겠지만 스키마를 정의하는 가장 좋은 방법은 무엇일까요?
나는 다양한 대안이 없다, 둘 다 저를 설득 :
이Schema {
myJSON : []
}
이 아주 못생긴하지만 지금은 myJSON로 내 JSON을 저장할 수 [0] = {이름 : "theName"...}. Ofc는 가장 추악하지만 가장 가까운 곳에서 원래의 데이터 구조를 발견했습니다.
이 더 예쁜하지만 그때, 최종 JSON 내가 원래 하나가 didnt가 많은 배열과 indirections을해야합니다 몇 가지 문제를 발견 한
json Schema {
name: String,
parts: [part]
}
part Schema {
name : String,
props : [prop]
}
prop Schema {
name : String,
value : Numeric
}
또 다른 :
{name :"a_string", parts:[{name : "a1",
props : [{name : "something", value: 'a_number'}]},{...}]}
이다가 이러한 모든 성가신 배열을 Schema에서 제거하는 방법은 무엇입니까?
UPDATE :
var mySchema = new Schema({
name : String
, valid : Boolean
, parts : {}
});
는 그런 다음 "소품"이름을 넣어 제외하고 내가 (원하는 모든 JSON을 포함 : 내 데이터 모델을 조금 적응할 수 있기 때문에
마지막으로 나는 내 문제를 해결 한 외부). 이것은 내가 생각했던 방식이 아니지만 잘 작동합니다 (제 생각에).
예, 포함 된 문서는 배열 안에 포장해야합니다. (가상을 사용하여 이상한 수정을 시도 할 수 있다고 생각합니다 ... 아이디어를 자세히 설명해 주시겠습니까? 감사합니다. – Dredok