You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Sequelize中自定义模型对应的数据库表名?

解决方案

Sequelize 默认会将模型名称转为复数形式作为表名,这就是为什么你的模型r_hasStatus生成了r_hasStatuses表。要指定自定义表名,只需在sequelize.define方法中添加第三个配置参数,显式设置tableName属性即可。

修改后的完整模型代码如下:

module.exports = (sequelize, Sequelize) => {  
    const r_hasStatus = sequelize.define("r_hasStatus",
                        {   
                            comment : {
                                type: Sequelize.STRING,
                                allowNull: true,
                                field: 'comment'
                            },    
                        },
                        {
                            tableName: 'r_hasStatus' // 显式指定目标表名
                        }); 

    r_hasStatus.associate = function (models) {                                           
        // 关联逻辑保持原有写法即可
    };  

    return r_hasStatus;
};

重新同步数据库后,生成的表名就会是你需要的r_hasStatus,而非默认的复数形式。

内容的提问来源于stack exchange,提问作者Jose Cabrera Zuniga

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 19:52:01