gpt4 book ai didi

node.js - 带有 Sequelizejs 的 Nodejs 对每个模型使用单独的文件

转载 作者:IT老高 更新时间:2023-10-28 23:15:43 26 4
gpt4 key购买 nike

这是一个令人尴尬的初学者问题,但我只是想解决我对 Sequelizejs 的担忧。我想将每个模型拆分到自己的文件中,以保持我的源代码井井有条。为此,我需要 require("sequelize')var sequelize = new Sequelize('DB-Name', 'DB-User', 'DB-Password'); 在每个文件的开头。

我的问题是,这会为每个模型创建一个到数据库的新连接,还是会继续重复使用相同的连接?我是否应该放弃“每个文件一个模型”的整个概念而只创建一个主 Models.js 文件?

我对 Node 还很陌生,并且仍在习惯它的约定。感谢您的帮助!

最佳答案

每个模型都定义为自己的模块,您可以将其导出:

module.exports = function(sequelize, DataTypes){
return sequelize.define('Brand', {
name: {
type: DataTypes.STRING,
unique: true,
allowNull: false },
description: {
type: DataTypes.TEXT,
allowNull: false },
status: {
type: DataTypes.INTEGER,
unique: false,
allowNull: true }
})
};

然后在初始化Sequelize的时候直接导入模块(这里可以导入很多模型):

var Sequelize = require("sequelize");
var config = require("../../config/config.js");
var sequelize = new Sequelize(config.database, config.username, config.password,
{ dialect: config.dialect, host: config.host, port: config.port,
omitNull: true, logging: false });
var Brand = require("./Brand").Brand;

您可以在 http://nodejs.org/api/modules.htm 上阅读有关模块的更多信息但是上面的示例应该可以帮助您入门。

关于node.js - 带有 Sequelizejs 的 Nodejs 对每个模型使用单独的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14889055/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com