续集:insert

时间:2018-08-07 15:02:09

标签: node.js orm sequelize.js es6-promise

我正在尝试使用 bulkCreate 插入记录,但是在调用此方法后它不会退出。请在下面看看:

这是创建模式的类架构

import Sequelize from "sequelize";
import {database, username, password, options} from './config.json';

class Schema {
    constructor() {
        this.sequelize = new Sequelize(database, username, password, options);
    }

    bucketModal(){
        return this.sequelize.define('S3bucketFiles', {
            BucketName: Sequelize.STRING,
            FileName: Sequelize.STRING,
            IsInUse: Sequelize.INTEGER,
            BucketType: Sequelize.INTEGER
        },
            {
                timestamps: false
            });
    }
}

export const AwsSchema = new Schema();

以下是我将批量记录插入数据库的类:

import Sequelize from "sequelize";
import {database, username, password, options} from './config.json';
import {AwsSchema} from './schema';

class Aws {
    constructor() {
        this.sequelize = new Sequelize(database, username, password, options);
        this.bucket = AwsSchema.bucketModal();
    }

    /**
     * Save data
     * @param data
     */
   create(data) {
       return new Promise(resolve => {
            resolve(this.bucket.bulkCreate(data));
       })
    }
}

export const AwsDb = new Aws();

此处的问题是 create()函数。

create(data) {
           return new Promise(resolve => {
                resolve(this.bucket.bulkCreate(data));
           })
        }

您可以看到我正在尝试返回Promise,但是bulkCreate不会退出。输出显示如下:

37571438059.png',2),(N'customerud',N'bug426_CA5592_63600919dfdf93388220.jpg',2);

此处未显示新行,光标在上方闪烁,并且所有数据被保存后不会退出。

如果我仅在下面编写以下代码:

create(data) {
        return new Promise(resolve => {
            resolve(5);
        })
    }

现在脚本正在退出,我可以看到以下输出对我来说很不错:

data records
amuk@amuk:~ 

所以我只想知道有什么方法可以退出 bulkCreate 还是代码中有错误?

0 个答案:

没有答案