[英]Sequelize() doesn't return an instance of sequelize
我最近開始使用Sequelize
來獲取我的 postgresql 數據庫的模型。 要映射數據庫,我使用sequelize-auto
。 當我以這種方式將參數發送到其構造函數時,我能夠使用 sequelize-auto 創建我的數據庫的自動生成的映射:
init.js
let sequelizeAutoInstance = new SequelizeAuto(dbName,username,password,options)
但是當我嘗試以這種方式發送Sequelize
的實例時它不起作用:
新的init.js
let sequelizeInstance = new Sequelize(sequelizeOptions);
sequelizeAutoInstance = new SequelizeAuto(sequelizeInstance)
查看sequelize-auto
ctor 我看到它運行這些行:
if (database instanceof Sequelize) {
this.sequelize = database;
}
但是從 new Sequelize 返回的實例不返回 Sequelize 的實例。
我錯過了什么? 謝謝
如果我猜對了你。 您需要將 sequelize 的實例傳遞給您的模型。 如果您正在使用擴展模型,您可以簡單地將實例傳入 init 選項。
const { Sequelize, DataTypes, Model } = require('sequelize'); const sequelize = require("../your/db/file"); class User extends Model {} User.init({ // Model attributes are defined here firstName: { type: DataTypes.STRING, allowNull: false }, lastName: { type: DataTypes.STRING // allowNull defaults to true } }, { // Other model options go here sequelize, // We need to pass the connection instance modelName: 'User' // We need to choose the model name });
如果它的功能那么
const { Sequelize, DataTypes } = require('sequelize'); const sequelize = require("../your/db/file"); const User = sequelize.define('User', { // Model attributes are defined here firstName: { type: DataTypes.STRING, allowNull: false }, lastName: { type: DataTypes.STRING // allowNull defaults to true } }, { // Other model options go here });
所有這些都可以在Sequelize 模型文檔中找到
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.