我使用Sequelize
作爲ORM。這裏是我的用戶模型:get .findOrCreate()錯誤
###
User model
###
User = exports.User = globals.sequelize.define "User",
username: globals.Sequelize.STRING
email:
type: globals.Sequelize.STRING
validate:
isEmail: true
hash: globals.Sequelize.STRING
salt: globals.Sequelize.STRING(512)
fname: globals.Sequelize.STRING
lname: globals.Sequelize.STRING
country: globals.Sequelize.STRING
我節省用戶:
globals.models.User.findOrCreate
username: "johny"
password: "pass"
email: "johny93[###]example.com"
.success (user, created)->
console.log user.values
res.send 200
.error ->
console.log err # how to catch this?
res.send 502
如果電子郵件是有效的(電子郵件: 「[email protected]」),一切都很正常。但是,如果電子郵件未通過驗證(如上例所示),則會出現插入錯誤。如何捕獲錯誤類型? .error
方法無法獲取任何錯誤參數。
您可以打開SQL日誌sequelize。它會給你你試圖運行的查詢導致錯誤。也@Sriharsha是正確的,你需要指定參數的字符串,以console.log錯誤 –