node express服务器配置orm框架sequilize

ops/2024/12/22 22:18:14/

搭建服务器直接读取数据库时,有些逻辑会比较麻烦,性能上也不是很好,选用orm框架式一个很好的选择,我这里使用express+sequilize

安装sequilize

npm install --save sequelize

创建sequilize文件:

const { Sequelize } = require('sequelize');// 创建Sequelize实例
const sequelize = new Sequelize('lanya', 'root', '123456', {host: '127.0.0.1',dialect: 'mysql', // 或者 'postgres', 'sqlite', 'mssql'logging: false
});module.exports = sequelize;

创建Model:

// models/User.js
const { DataTypes } = require('sequelize');
const sequelize = require('../config/sql.config');const testModel = sequelize.define('part1', {id: {type: DataTypes.INTEGER,autoIncrement: true,primaryKey: true},category: {type: DataTypes.STRING,},subCategory: {type: DataTypes.STRING,},subTitle: {type: DataTypes.STRING,},question: {type: DataTypes.STRING,},iconPath: {type: DataTypes.STRING,},addTime: {type: DataTypes.STRING,},modifyTime: {type: DataTypes.STRING,},isCollected: {type: DataTypes.STRING,},
}, {// 由于表已经存在,timestamps 设置为 falsetimestamps: false,// 设置表的名字freezeTableName: true,
});module.exports = testModel;

 引入到对应的文件中,并声明同步方法

//sequilize
const testModel = require("./miniUser")// 同步所有模型到数据库
async function syncAllModels() {await testModel.sync();
}module.exports = syncAllModels

在服务器启动时,执行方法

const express = require('express')
const cors = require('cors')
const syncAllModels = require("./models/index")//引入路由
const manage = require("./router/manage/index")
const mini = require("./router/miniprogram/index")//创建服务器
const app = express()//跨域方案
app.use(cors())
app.use(express.urlencoded({ extended: false }))
app.use(express.json())//配置orm框架管理
syncAllModels()app.listen(888, () => {console.log('启动了');
})

此时,已经配置好了,下面就可以使用对应的api了


http://www.ppmy.cn/ops/144144.html

相关文章

酒蒙子骰子小程序系统

酒蒙子流量变现小程序小游戏 后端tp8 前端uniapp 会员变现 分销推广 流量主 …

kratos源码分析:熔断器

文章目录 为什么需要熔断Google sre弹性熔断算法kratos Breaker源码分析公共接口sre实现上报请求结果判定是否熔断 为什么需要熔断 一般来说,当服务器过载(overload)时,需要给client返回服务过载的报错 但是拒接请求也有成本&…

《Vue 响应式数据原理》

一、引言 在 Vue.js 中,响应式数据是其核心特性之一。响应式数据使得当数据发生变化时,视图能够自动更新,从而提高了开发效率和用户体验。本文将深入探讨 Vue 响应式数据的原理,包括数据侦测、依赖收集和派发更新等方面。 二、Vue…

基于MNE的EEGNet 神经网络的脑电信号分类实战(附完整源码)

利用MNE中的EEG数据,进行EEGNet神经网络的脑电信号分类实现: 代码: 代码主要包括一下几个步骤: 1)从MNE中加载脑电信号,并进行相应的预处理操作,得到训练集、验证集以及测试集,每个…

深入探讨C++标准输入输出流:iostream

C标准库中的输入输出流(iostream)是处理数据输入和输出的核心部分,提供了灵活且高效的方式来读写各种数据类型。通过理解和运用iostream,开发者可以实现丰富的输入输出功能,从而增强程序的交互性和用户体验。本文将深入探讨C的标准输入输出流…

STM32 水质水位检测项目 显示模块

Driver层 FSMC(之前代码) Interface层 LCD(之前代码) App层 Display(显示模块) display.h #ifndef __DISPLAY_H__ #define __DISPLAY_H__#include "lcd.h"//初始化 void Display_Init(voi…

【YOLOv3】 源码(common.py)

概述 该文件中提供了构建yolov3模型的各种基础模块,其中包含了常用的功能模块,如标准卷积层、瓶颈层、空间金字塔池化层、图像预处理和后处理工具等,这些都是构建高效和模块化模型的基本 该文件的作用类似于一栋建筑的建筑材料和工具&#…

超灵敏红外光谱技术:MIP-PS技术如何实现痕量分子检测

大家好!今天来了解一种超灵敏红外光谱技术——《Ultrasensitive infrared spectroscopy via vibrational modulation of plasmonic scattering from a nanocavity》发表于《SCIENCE ADVANCES》,它为化学分析和生物传感领域带来了新的突破。这项技术基于纳…