执行升帆时 orm 加载失败

orm Failed To Load When Doing sails lift

我正在使用 "sails": "~0.12.1"。我正在连接到 mysql 数据库。我可以连接到 MySQL Workbench 上的数据库,因此数据库可以正常工作。当我尝试 sails lift 时出现此错误:

info: Starting app...

error: A hook (`orm`) failed to load!
error: SyntaxError: Unexpected identifier
    at exports.runInThisContext (vm.js:53:16)
    at Module._compile (module.js:414:25)
    at Object.Module._extensions..js (module.js:442:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:311:12)
    at Module.require (module.js:366:17)
    at require (module.js:385:17)
    at /node_modules/include-all/index.js:129:29
    at Array.forEach (native)
    at requireAll (/node_modules/include-all/index.js:44:9)
    at buildDictionary (/node_modules/sails/node_modules/sails-build-dictionary/index.js:68:14)
    at Function.module.exports.optional (/node_modules/sails/node_modules/sails-build-dictionary/index.js:160:9)
    at Hook.loadModels (/node_modules/sails/lib/hooks/moduleloader/index.js:344:23)
    at Hook.wrapper [as loadModels] (/node_modules/sails/node_modules/lodash/index.js:3095:19)
    at Array.async.auto.models (/node_modules/sails/lib/hooks/orm/load-user-modules.js:20:23)
    at /node_modules/sails/node_modules/async/lib/async.js:591:38

更新:config/connections.js

module.exports.connections = {
  mysql: {
    adapter: 'sails-mysql',
    host: 'localhost',
    user: 'root',
    password: 'root',
    database: 'quizzlydb'
  }
};

config/models.js

module.exports.models = {
  connection: 'mysql',
  migrate: 'alter'
};

package.json

...
"sails": "~0.12.1",
"sails-disk": "~0.10.9",
"sails-memory": "^0.10.6",
"sails-mysql": "^0.11.5",
"waterline": "^0.11.0",
...

您可以在 config/env/development.jsconfig/env/test.jsconfig/env/production.js 文件中定义这些连接 这样他们只会为正确的环境启动池。

我刚刚开始学习编码并开始使用 Sails。如果我的回答不是最好的,请原谅我。我在切换到 MySQL 时也遇到了问题,但后来我发现我应该安装 MySQL 适配器。之后一切正常。

https://www.npmjs.com/package/sails-mysql

并且您还应该将连接详细信息放在 /config/local.js 中(示例代码在 /config/connections.js 中给出,您可以将连接详细信息放在那里但是如果您使用 git 或您希望使用的类似文件 local.js,因为该文件未上传,因此您的凭据不会发布给广大受众。)

我的一个模型中缺少一个逗号。呸!我以为我在那儿要疯了。

我在 sails 0.12 版和 nodejs 14 版上遇到了同样的问题。尝试安装 nodejs 12.19.1 版。没有解决方案有帮助,但确实有帮助。