2017-04-25 31 views
6

對於sails很新穎,我試圖在postgresql數據庫中創建一個身份驗證模式。

我有一個用戶模型

module.exports = { 
    attributes: { 
    firstName: { 
     type: 'string' 
    }, 
    lastName: { 
     type: 'string' 
    }, 
    email: { 
     type: 'string', 
     required: true, 
     unique: true 
    }, 
    password: { 
     type: 'string', 
     required: true 
    }, 
    authTokens: { 
     collection: 'authToken', 
     via: 'owner' 
    } 
    } 
} 

和用戶登記/創建控制器

module.exports = { 

    create: function (req, res) { 
    sails.log.info("Message to be logged"); 
    User.create(
     { 
     email: req.body.email, 
     firstName: req.body.firstName, 
     lastName: req.body.lastName, 
     password: req.body.password 
     } 
    ).exec(function (err) { 
     if (err) { 
     return res.status(400).send({err: err}); 
     } else { 
     return res.status(200).send({message: "it is okay"}); 
     } 
    }); 
    } 
} 

現在,當使用默認localDiskDb適配器IM,它的工作原理,用戶通過創建方法創建。當我在datastores.js改變默認的數據源,以

default: { 
    adapter: 'sails-postgresql', 
    host: 'mydbserver.rds.amazonaws.com', 
    user: 'myDbRoot', 
    password: 'pass', 
    database: 'myDbName' 

    } 

我可以看到,表在我的數據庫創建。但是,當我試圖調用create方法將返回錯誤:

AdapterError: Unexpected error from database adapter: there is no parameter $1

進出口使用這些版本的帆包:

"sails": "^1.0.0-30", 
    "sails-hook-grunt": "^1.0.4", 
    "sails-hook-orm": "^2.0.0-0", 
    "sails-hook-sockets": "^1.0.1", 
    "sails-postgresql": "1.0.0-1", 

有沒有人有一個想法?

回答

3

升級到

"sails-hook-orm": "^2.0.0-17", 
"sails-postgresql": "1.0.0-10", 

解決它。

相關問題