【问题标题】:A hook (`orm`) failed to load while using sails-mongo in sails version 1在 Sails 版本 1 中使用sails-mongo 时无法加载钩子(`orm`)
【发布时间】:2019-08-19 03:35:54
【问题描述】:

帆版:1.2.3 节点版本:v10.14.2 Sails Mongo 版:1.0.1

数据存储配置:

default: {
    adapter: 'sails-mongo',
    url:
      'mongodb://user:password@xxx.xxx.xxx.xxx:27017/user_db'

密码由#!_-等特殊字符组成。那是 有问题吗?

由于某些原因,即使在更改密码后 字符到适当的字符,仍然无法连接。

我期待在没有用户名和密码的情况下使用 localhost 建立连接的帮助。如何构造这样的连接字符串?

error: A hook (`orm`) failed to load!
error: Could not tear down the ORM hook.  Error details: Error: Consistency violation: Attempting to tear down a datastore (`default`) which is not currently registered with this adapter.  This is usually due to a race condition in userland code (e.g. attempting to tear down the same ORM instance more than once), or it could be due to a bug in this adapter.  (If you get stumped, reach out at http://sailsjs.com/support.)
    at Object.teardown (/Users/apple/Documents/projects/ozone-login-system/node_modules/sails-mongo/lib/index.js:390:19)
    at /Users/apple/Documents/projects/ozone-login-system/node_modules/waterline/lib/waterline.js:758:27
    at /Users/apple/Documents/projects/ozone-login-system/node_modules/waterline/node_modules/async/dist/async.js:3047:20
    at eachOfArrayLike (/Users/apple/Documents/projects/ozone-login-system/node_modules/waterline/node_modules/async/dist/async.js:1002:13)
    at eachOf (/Users/apple/Documents/projects/ozone-login-system/node_modules/waterline/node_modules/async/dist/async.js:1052:9)
    at Object.eachLimit (/Users/apple/Documents/projects/ozone-login-system/node_modules/waterline/node_modules/async/dist/async.js:3111:7)
    at Object.teardown (/Users/apple/Documents/projects/ozone-login-system/node_modules/waterline/lib/waterline.js:742:11)
    at Hook.teardown (/Users/apple/Documents/projects/ozone-login-system/node_modules/sails-hook-orm/index.js:246:30)
    at Sails.wrapper (/Users/apple/Documents/projects/ozone-login-system/node_modules/@sailshq/lodash/lib/index.js:3275:19)
    at Object.onceWrapper (events.js:273:13)
    at Sails.emit (events.js:182:13)
    at Sails.emitter.emit (/Users/apple/Documents/projects/ozone-login-system/node_modules/sails/lib/app/private/after.js:56:26)
    at /Users/apple/Documents/projects/ozone-login-system/node_modules/sails/lib/app/lower.js:67:11
    at beforeShutdown (/Users/apple/Documents/projects/ozone-login-system/node_modules/sails/lib/app/lower.js:45:12)
    at Sails.lower (/Users/apple/Documents/projects/ozone-login-system/node_modules/sails/lib/app/lower.js:49:3)
    at Sails.wrapper [as lower] (/Users/apple/Documents/projects/ozone-login-system/node_modules/@sailshq/lodash/lib/index.js:3275:19)
error: Failed to lift app: Error: Consistency violation: Unexpected error creating db connection manager:
```
MongoError: Authentication failed.
    at flaverr (/Users/apple/Documents/projects/ozone-login-system/node_modules/flaverr/index.js:94:15)
    at Function.module.exports.parseError (/Users/apple/Documents/projects/ozone-login-system/node_modules/flaverr/index.js:371:12)
    at Function.handlerCbs.error (/Users/apple/Documents/projects/ozone-login-system/node_modules/machine/lib/private/help-build-machine.js:665:56)
    at connectCb (/Users/apple/Documents/projects/ozone-login-system/node_modules/sails-mongo/lib/private/machines/create-manager.js:130:22)
    at connectCallback (/Users/apple/Documents/projects/ozone-login-system/node_modules/mongodb/lib/mongo_client.js:428:5)
    at /Users/apple/Documents/projects/ozone-login-system/node_modules/mongodb/lib/mongo_client.js:376:13
    at process._tickCallback (internal/process/next_tick.js:61:11)
```
    at Object.error (/Users/apple/Documents/projects/ozone-login-system/node_modules/sails-mongo/lib/index.js:268:21)
    at /Users/apple/Documents/projects/ozone-login-system/node_modules/machine/lib/private/help-build-machine.js:1514:39
    at proceedToFinalAfterExecLC (/Users/apple/Documents/projects/ozone-login-system/node_modules/parley/lib/private/Deferred.js:1153:14)
    at proceedToInterceptsAndChecks (/Users/apple/Documents/projects/ozone-login-system/node_modules/parley/lib/private/Deferred.js:913:12)
    at proceedToAfterExecSpinlocks (/Users/apple/Documents/projects/ozone-login-system/node_modules/parley/lib/private/Deferred.js:845:10)
    at /Users/apple/Documents/projects/ozone-login-system/node_modules/parley/lib/private/Deferred.js:303:7
    at /Users/apple/Documents/projects/ozone-login-system/node_modules/machine/lib/private/help-build-machine.js:952:35
    at Function.handlerCbs.error (/Users/apple/Documents/projects/ozone-login-system/node_modules/machine/lib/private/help-build-machine.js:742:26)
    at connectCb (/Users/apple/Documents/projects/ozone-login-system/node_modules/sails-mongo/lib/private/machines/create-manager.js:130:22)
    at connectCallback (/Users/apple/Documents/projects/ozone-login-system/node_modules/mongodb/lib/mongo_client.js:428:5)
    at /Users/apple/Documents/projects/ozone-login-system/node_modules/mongodb/lsib/mongo_client.js:376:13
    at process._tickCallback (internal/process/next_tick.js:61:11)

【问题讨论】:

    标签: javascript node.js sails.js waterline sails-mongo


    【解决方案1】:

    我正在使用 mongo altas 来学习以下对我有用的东西

    adapter: require('sails-mongo'),
        url: 'mongodb://dbUser:dbpass@learning-cluster-shard-XXXXXXXXXXX',
      },
    

    如果你正在使用 atlas,别忘了在 mongo atlas 网站上允许访问你当前的 IP

    【讨论】:

      【解决方案2】:

      如果您在 2020 年查看此内容,则需要使用较旧的 mongo-db url 设置将 mongo Atlas 连接到sails。

      //config/datastores.js
      default:
        { adapter: require('sails-mongo'),
          url: "mongodb://<YOUR_USERNAME>:<YOUR_PASSWORD>@cluster0-shard-00-00-kiodk.mongodb.net:27017,cluster0-shard-00-01-kiodk.mongodb.net:27017,cluster0-shard-00-02-kiodk.mongodb.net:27017/<YOUR_DB_NAME>?ssl=true&replicaSet=Cluster0-shard-0&authSource=admin&retryWrites=true&w=majority",
        }
              
      

      要使其与帆一起使用,您的 URL 应采用上述格式!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2017-08-14
        • 2015-09-03
        • 1970-01-01
        • 2014-12-20
        • 2014-10-10
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多