首页 > 解决方案 > 有没有办法使用 sequelize 对模型进行分组?

问题描述

我正在使用sequelizewithpostgres和 在数据库定义中有两个数据库模式,counter并且schedule,每个模式都有一个带有名称的表events(用于不同目的),并且在定义 sequelize 模型时,我目前必须命名引用的两个模型之一以events不同的方式放到桌子上,因为我不能将两者命名为event.

是否可以在一种命名空间或组类型中定义模型?像这样的东西:

// models/counter/event.js
const event = sequelize.define(
    'counter.event',
    {
        title: {
            type: dataTypes.STRING(64),
            allowNull: false
        }
    },
    {
        timestamps: true,
        tableName: 'events',
        schema: 'counter'
    }
);

// models/schedule/event.js
const event = sequelize.define(
    'schedule.event',
    {
        title: {
            type: dataTypes.STRING(64),
            allowNull: false
        }
    },
    {
        timestamps: true,
        tableName: 'events',
        schema: 'schedule'
    }
);

// index.js
sequelize.import(Path.join(__dirname, './models/counter/event'));
sequelize.import(Path.join(__dirname, './models/schedule/event'));

const counterEvents = sequelize.models.counter.event.findAll();
const scheduleEvents = sequelize.models.schedule.event.findAll();

有什么想法吗?

标签: postgresqlsequelize.js

解决方案


推荐阅读