我正在嘗試學習mongo/mongoose,並將json導入到MongoDB中。Mongoose - 將json對象映射到Schema
我的JSON包含了一些形式的對象:
{
"FIELD1": "28/02/2017",
"FIELD2": "string value",
"FIELD3": "100"
},
{
"FIELD1": "28/02/2017",
"FIELD2": "string",
"FIELD3": "57"
},
我有一個模式:
var statementSchema = new Schema({
//date: {type:Date, required: true},
//name : {type:String, required:true},
//amount: {type: Number, required:true}
FIELD1 : {type:String, required:true},
FIELD2: {type:String, required:true},
FIELD3: {type:String, required:true}
});
你可以看到,我真的想在DB的鑰匙,更描述它們包含的值比它們在源json中的值更高(即,我希望json中的FIELD1
在DB中爲date
)。
這樣做的最好方法是什麼?我見過貓鼬aliasfield,這是最好的方法還是有默認的方式來定義模式中的FIELD1 as
someothername?
雖然我有你,那麼將FIELD1和FIELD3分別作爲Date
和Number
分別從json源代碼中的當前字符串中投射出來的正確方法是什麼? ;)
感謝。但是,上面只是定義了字段所需的類型嗎?如果我從具有該值的源以字符串的形式導入,那麼也會將其轉換爲「Date」等等? –
是的,可以看到我更新的答案。 –
謝謝。關於在模式定義中具有不同鍵的選項,比在輸入json中是唯一的/最好的選項https://github.com/ramiel/mongoose-aliasfield –