2014-05-22 78 views
1

我剛剛通過npm安裝Sequelize和MySQL模塊,並且遇到錯誤。Sequelize錯誤 - lodash沒有方法「模板」

我可以成功查詢我的模型,但試圖創建一個新的模型實例會導致query-generator.js文件中出現錯誤。

我的代碼:

var Sequelize = require('sequelize') 
    , sequelize = new Sequelize('databasename', 'username', 'password'); 

var User = sequelize.define('users', { 
    email: Sequelize.STRING, 
    fname: Sequelize.STRING, 
    lname: Sequelize.STRING, 
}); 

// WORKS 
User.find(1) 
    .success(function(user) { 
    console.log('User found'); 
    }). 
    error(function(err) { 
    console.log('Error locating user', err); 
    }); 

// FAILS 
User.create({ 
    email : '[email protected]', 
    fname : 'John', 
    lname : 'Doe' 
}) 
.success(function(user) { 
    // Do something 
}) 
.error(function(err) { 
    // Do something 
}); 

而這裏的誤差

~/Project/node_modules/sequelize/lib/dialects/abstract/query-generator.js:156 
     return Utils._.template(query)(replacements) 
       ^
TypeError: Object function lodash(value) { 
     // don't wrap if already wrapped, even if wrapped by a different `lodash` constructor 
     return (value && typeof value == 'object' && !isArray(value) && hasOwnProperty.call(value, '__wrapped__')) 
    ? value 
    : new lodashWrapper(value); 
} has no method 'template' 
at Object.module.exports.QueryGenerator.insertQuery (~/Project/node_modules/sequelize/lib/dialects/abstract/query-generator.js:156:22) 
+0

http://lodash.com/docs#template? – sdepold

+0

我得到的lodash有一個模板方法。但問題是,爲什麼Sequelize包會給我這個錯誤?我找不到任何其他記錄在案的案例。 – Nilo

+0

你正在使用mysql的權利?你是否也安裝了mysql包? – sdepold

回答