我搜索了整个网络,并且无法确定如何将模式添加到下面的这个sequelize模型中。下面的代码不会反馈错误,但是当我检查postgres数据库时,唯一的模式是公共的默认模式。PostgreSQL的Sequelize模式:如何在模型中准确定义模式?
// The model definition is done in /path/to/models/project.js
module.exports = function(sequelize, DataTypes) {
return sequelize.define("project", {
name: DataTypes.STRING,
description: DataTypes.TEXT,
},
define: {
schema: "prefix"
},
classMethods: {
method1: function() {},
method2: function() {}
},
instanceMethods: {
method3: function() {}
})
应如何修改脚本以准确定义模式?
编辑
在我的情况下,最后的答案是
database_name.sequelize.createSchema('prefix').then(() => {...});
我./models/index.js
文件数据库对象如下:
database_name = {
Sequelize: Sequelize,
sequelize: sq,
table_1: sq.import(__dirname + '/file_folder')
};
module.exports = database_name;
这不起作用。它踢回“架构不存在” – JnL
您是否使用'sequelize.sync()'同步数据库或者使用迁移? – piotrbienias
因为在定义模型之前需要创建模式 – piotrbienias