【问题标题】:sequelize-auto --config optionsequelize-auto --config 选项
【发布时间】:2019-03-01 10:43:51
【问题描述】:

我已经建立了一个数据库,我正在将它与 Sequelize ORM 一起使用。数据库已经有时间戳列“created_at”和“updated_at”。

为了生成续集模型,我使用了 sequelize-auto,它使用一个命令生成了所有模型。但是当我使用任何模型来获取数据时。它返回错误“unknown column createdAt”。

因此,我手动打开了一个模型文件并使用“下划线:true”对其进行了编辑,它解决了问题。 但我希望为所有模型全局设置此选项。因此,在谷歌搜索了一段时间后,我开始了解带有“sequelize-auto”命令的 -c 选项。

所以我创建了一个 json 文件并在 -c 选项中传递了该文件的路径。但同样,所有模型都没有“下划线:true”选项。

我使用这个选项如下

sequelize-auto -o "./models" -d sequelize_auto_test -h localhost -u my_username -x my_password -e mysql -c ./config/config.json

我也使用了这个带引号的命令

sequelize-auto -o "./models" -d sequelize_auto_test -h localhost -u my_username -x my_password -e mysql -c "./config/config.json"

【问题讨论】:

    标签: node.js sequelize.js sequelize-auto


    【解决方案1】:

    你必须简单地写下你的 ./config/config.json:

    {
       "underscored": true
    }
    

    在我的情况下,我已经拥有 created_at 和 updated_at,所以让续集不会自动检索并包括架构,我必须在我的配置上进行设置:

    { 
       "timestamps": false,
       "schema": "sch_hrms"
    }
    

    然后,再次执行 sequelize-auto。

    所有模型都会自动包含该选项。

    -ManzTIHAGI

    【讨论】:

      【解决方案2】:

      使用 -a(--additional)标志而不是 -c 来包含 JSON 文件中的其他模型选项。

      这是命令行帮助所说的:

      -a, --additional       Path to a json file containing model definitions (for
                               all tables) which are to be defined within a model's
                               configuration parameter. For more info:
                               https://sequelize.readthedocs.org/en/latest/docs/models
                               -definition/#configuration
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-01-24
        • 1970-01-01
        • 2014-10-24
        • 1970-01-01
        • 2019-01-06
        • 2021-05-13
        • 1970-01-01
        • 2020-07-16
        相关资源
        最近更新 更多