我對JavaScript和Mongoose很新穎。我結束了一個奇怪的設計JSON,我想通過貓鼬堅持下去。爲我的JSON定義一個有效的mongoose模式,嵌套的文檔沒有數組?
這是本JSON的例子:
A1,A2是可變的(並不總是有A1既不A2,也許還有其他人) 東西,something_else有變也,可以是不同的標識符 - 它們是屬性 - 。
也許它是我的錯設計這樣一個奇怪的JSON,但什麼是定義它的模式的最佳方式?
我有不同的選擇,既不說服我:
Schema {
myJSON : []
}
這是非常醜陋的,但現在我可以存儲我的JSON作爲myJSON [0] = {名稱: 「theName」 ...}。 Ofc是最醜陋的,但最接近我發現我的原始數據結構。
另一個
json Schema {
name: String,
parts: [part]
}
part Schema {
name : String,
props : [prop]
}
prop Schema {
name : String,
value : Numeric
}
這是更漂亮,但後來我發現一些麻煩,最終的JSON將有許多陣列和間接性,我沒有對原來的一個:
{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 2012-07-05 10:57:38