当前位置:  开发笔记 > 编程语言 > 正文

销毁书架/ knex连接池

如何解决《销毁书架/knex连接池》经验,为你挑选了0个好方法。

我有一个使用Bookshelf/Knex的db api.

我有多个看起来像这样的Bookshelf模型:

import bookshelf from '../bookshelf';

var Product = bookshelf.Model.extend({
  tableName: 'product'
  // ...
});
export default Product;

书架包括如下:

import dbConfig from './dbConfig';

const knex = require('knex')(dbConfig);
const bookshelf = require('bookshelf')(knex);

module.exports = bookshelf;

我也有多个api动作调用看起来像这样:

import Product from '../../Models/Product';

export default function getProducts(bookshelf) {

  return new Promise((resolve) => {

    Product.collection().fetch().then((products) => {
      resolve({
        products
      });
    });
  });
}

我的问题是knex池连接,我需要在解析操作文件中的请求之前销毁连接池.但是,为了做到这一点,我需要访问模型中导入的书架或knex对象.

我想不出这样做的简洁方法.我可以在调用该操作的顶级文件中创建knex对象,然后该进程可能在收到响应时破坏连接.但是我必须将它传递给动作然后传递给模型.我怎么能这样做,以便连接池被销毁而不必在任何地方传递knex对象?

推荐阅读
爱唱歌的郭少文_
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有