【问题标题】:use_env_variable returned undefined in sequelizeuse_env_variable 在 sequelize 中返回 undefined
【发布时间】:2018-02-06 08:13:22
【问题描述】:

我使用的是最新版本的sequelize,我的server/config/config.json文件配置如下:

{
    "development": {
        "use_env_variable": "DATABASE_URL",
        "dialect": "postgres"
    },
    "test": {
        "use_env_variable": "DATABASE_TEST_URL",
        "dialect": "postgres"
    },
    "production": {
        "use_env_variable": "DATABASE_URL",
        "dialect": "postgres"
    }
}

我的.env文件配置如下:

DATABASE_URL = "MY database URL Here"

当我运行 sequelize db:migrate 时,我得到以下信息:

解析 url 时出错:未定义

【问题讨论】:

  • 从 docker 容器中,我运行 sequelize db:migrate --env development,但它给出以下错误,错误:解析 url 时出错:postgresql//root:password@listings-service-db/db

标签: node.js postgresql sequelize.js


【解决方案1】:

您没有定义变量 $DATABASE_URL。

在终端试试这个:

export DATABASE_URL=postgresql://[user[:password]@][netlocation][:port][/dbname]

【讨论】:

    【解决方案2】:

    对于windows用户

    > SET DATABASE_URL=postgresql://[user[:password]@][netlocation][:port][/dbname]

    注意:将'export'改为'SET',在我身边工作

    【讨论】:

    • 嗨,欢迎来到 Stackoverflow!如果您在回答任何问题之前可以read these guidelines,那就太好了。谢谢。
    • 你拯救了我的一天@Zeechan。谢谢
    • 你拯救了我的一天@Zeechan。谢谢
    【解决方案3】:

    或者,当你要在终端中启动服务器时,记得像这样配置环境

    --环境开发

    --环境测试

    示例创建迁移

    sequelize db:migrate --env development
    
    sequelize db:migrate --env test
    
    npm run dev --env development
    

    上面的 npm 脚本帮助我在开发环境中启动服务器

    【讨论】:

    • sequelize db:migrate --env development 没有解决。
    【解决方案4】:

    我通过源码找到了解决办法: 配置文件是.js,而不是标准的.json

    文件config/config.js

    module.exports = {
        use_env_variables: "DATABASE_URL",
        dialect: "postgres"
    }
    

    你可以运行:

    DATABASE_URL=postgres://127.0.0.1:5432/mydb npx sequelize-cli db:migrate
    

    但是并没有按预期工作,新模型被添加到数据库中,与笔记本电脑的用户名同名?‍♂️我没有时间从源头找到。

    但我找到了 sequelize-cli 的另一种解决方案,其中参数 --url 是关键:

    npx sequelize-cli --url postgres://127.0.0.1:5432/mydb db:migrate
    

    【讨论】:

      猜你喜欢
      • 2023-03-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-06
      • 2021-06-24
      • 1970-01-01
      相关资源
      最近更新 更多