【发布时间】:2015-12-30 03:02:14
【问题描述】:
在 Sailsjs 控制台上,我正在尝试使用 Waterline/Sails 的 query() 方法在 MySQL 数据库。但是,我不断收到错误消息:
sails> User.query('SELECT id from user').exec(console.log)
TypeError: Cannot call method 'exec' of undefined
at repl:1:37
at REPLServer.self.eval (repl.js:112:21)
at Interface. (repl.js:239:12)
at Interface.emit (events.js:117:20)
at Interface._onLine (readline.js:203:10)
at Interface._line (readline.js:532:8)
at Interface._ttyWrite (readline.js:761:14)
at ReadStream.onkeypress (readline.js:100:10)
at ReadStream.emit (events.js:98:17)
at emitKey (readline.js:1096:12)
Running Waterline 的其他方法如 find() 执行成功。
sails> User.find().exec(console.log)
undefined
sails> null [ { email: 'xxxx',
password: 'xxxxx',
name: 'xxxx',
}]
Internet 搜索表明应该使用 sails-mysql 适配器进行连接;这就是我正在使用的,问题仍然存在。
我的 config/connections.js 文件
module.exports.connections = {
default_dev_mysql_server: {
adapter: 'sails-mysql',
host: '127.0.0.1',
port: 3306,
user: 'xxxxx',
password: 'xxxxx',
database: 'xxxxxx'}
}
我的 config/models.js 文件
module.exports.models = {
schema: true,
connection: 'default_dev_mysql_server',
migrate: 'safe'
};
我正在运行 sails-mysql v0.11.2 和 sails v0.11.2,它们是最稳定的软件版本。
为了能够在 Sailsjs 上执行原始 SQL 查询,我还缺少哪些其他设置? Google 的帮助不大。
谢谢。
【问题讨论】:
标签: javascript node.js sails.js