我已经建立了一个数据库,我正在用它来序列化ORM。数据库已经有时间戳列"created_at“和"updated_at”。
为了生成sequelize模型,我使用sequelize-auto,它使用一个命令生成所有模型。但是当我使用任何模型来获取数据时。返回"unknown column createdAt“错误。
因此,我手动打开了一个模型文件,并用“下划线:真”对其进行了编辑,它解决了这个问题。但我希望为所有型号全局设置此选项。因此,在谷歌搜索了一段时间后,我开始使用“-c -auto”命令来了解自动序列化选项。
因此,我创建了一个json文件,并在-c选项中传递了该文件的路径。但是所有的模型都没有“下划线:真”选项。
我按如下方式使用了此选项
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"发布于 2018-10-26 02:34:55
使用-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发布于 2018-10-08 17:22:47
你必须简单地写下你的./config/config.json:
{
"underscored": true
}在我的例子中,我已经有了created_at和updated_at,所以让sequelize不能自动检索和包含模式,我必须在我的配置中设置:
{
"timestamps": false,
"schema": "sch_hrms"
}然后,再次执行sequelize-auto。
所有型号都将自动包含该选项。
-ManzTIHAGI
https://stackoverflow.com/questions/52504436
复制相似问题