2017-02-16 33 views
0

我在使用貓鼬保存到mongodb時遇到了困難。下面是我得到使用貓鼬創建mongodb時驗證錯誤

應用已經拋出未捕獲的異常而被終止的錯誤: ValidationError:pageModel驗證失敗

我的代碼

//page.js 
var mongoose = require('mongoose'); 
var Schema = mongoose.Schema; 

var pageShema = new Schema({ 
    pageId: { 
     type: String, 
     required: true 
    }, 
    logo: { 
     type: String 
    }, 
    subline: { 
     type: String 
    }, 
    header: { 
     type: String 
    }, 
    created_on: { 
     type: Date, 
     default: Date.now 
    }, 
    offense:{ 
     type: Schema.Types.Mixed 
    }, 
    deffense:{ 
     type: Schema.Types.Mixed 
    } 
}); 

var pageModel = mongoose.model('pageModel', pageShema); 

module.exports = pageModel; 

app.js

var mongoose = require('mongoose'); 
var dbURL = config.dbURL; 
mongoose.connect(dbURL); 
var pagedb = require('./models/page'); 

var page = new pagedb({ 
    pageId: 'test', 
    logo:'test logo', 
    subline: 'test subline', 
    header: 'test header', 
    created_on: Date.now, 
    offense: {}, 
    deffense: {} 
}); 


page.save(function (err, page) { 
    if (err) { 
     console.log('error!'); 
     throw err; 
    }; 
    console.log('page is created!'); 
}); 

回答

0

由於日期字段而失敗。使用new Date()而不是Date.now

var mongoose = require('mongoose'); 
var dbURL = config.dbURL; 
mongoose.connect(dbURL); 
var pagedb = require('./models/page'); 

var page = new pagedb({ 
    pageId: 'test', 
    logo:'test logo', 
    subline: 'test subline', 
    header: 'test header', 
    created_on: new Date(), 
    offense: {}, 
    deffense: {} 
}); 


page.save(function (err, page) { 
    if (err) { 
     console.log('error!'); 
     throw err; 
    }; 
    console.log('page is created!'); 
}); 
+0

謝謝路易斯!有效。 – inhaler