将所有表字段更改为蛇形情况

时间:2018-11-01 15:43:00

标签: node.js sequelize.js

im试图进行迁移以将所有现有的表字段更改为蛇形,将来的表字段已经以这种方式编写。 到目前为止,我一直在使用

myTableField = {type: datatype.stmh, field: 'my_table_field'}

我想停止这样做,而对于其他即将到来的领域,我只需要使用蛇形盒直接设置即可。

有什么办法吗?还是我必须手动为每个字段运行一个alter字段?

1 个答案:

答案 0 :(得分:0)

通过带下划线的模型选项,可以不重命名模型定义中要加有下划线的每个字段。

options.underscored - Converts all camelCased columns to underscored if true
options.underscoredAll - Converts camelCased model names to underscored table names if true

例如:

const User = sequelize.define('User', {
               firstname: Sequelize.STRING,
               lastname: Sequelize.STRING
             },{ 
                underscored:true})

此外,在CLI上,我们还可以选择使用snakecase生成迁移

>> sequelize model:generate --name User --attributes firstName:string,lastName:string  --underscored 

其中

 --underscored      Use snake case for the timestamp's attribute names    

但是它仅对迁移定义上的时间戳记字段起作用。