当前位置: 首页 > news >正文

网站建设服务器的搭建方式苏州知名高端网站建设企业

网站建设服务器的搭建方式,苏州知名高端网站建设企业,怎么做微商网站,外贸公司企业网站在上一篇文章已经成功的运行了一个http服务器#xff0c;接下来就是使用Sequelize ORM#xff08;官方文档#xff1a;Sequelize 简介 | Sequelize中文文档 | Sequelize中文网#xff09;来操作数据库。 1、安装依赖 首先也是需要安装相关的依赖 npm i sequelize npm i …在上一篇文章已经成功的运行了一个http服务器接下来就是使用Sequelize ORM官方文档Sequelize 简介 | Sequelize中文文档 | Sequelize中文网来操作数据库。 1、安装依赖 首先也是需要安装相关的依赖 npm i sequelize npm i mysql2 2、连接数据库 2.1 创建Sequelize实例定义模型属性 由于在实际项目中连接一个数据库中的多个表所以在这里我建了一个models文件夹index.js用来遍历models文件夹下的js文件并依次创建实例 // index.jsconst { Sequelize } require(sequelize); const fs require(fs); const path require(path); const config require(../config);// 数据库配置的文件单独整合出来const basename path.basename(__filename); const models {}; let sequelize;const initModels async () {if (!config.mysql.host || !config.mysql.port) {return null;}// 创建实例sequelize new Sequelize({dialect: mysql,logging: config.isDev? (msg) {logger.debug(msg---,msg);}: false,timezone: 08:00, // 修正时区...config.mysql,});// 遍历models文件夹下的所有文件并返回后缀名为js的文件modelFiles: [MultiAccount.js, Sort.js]const modelFiles fs.readdirSync(__dirname).filter((file) {return file.indexOf(.) ! 0 file ! basename file.slice(-3) .js;});// 如果modelFiles不存在或者modelFiles的长度为0直接退出if (!modelFiles || !(modelFiles.length)) {return null;}// 遍历modelFiles中的每一项并进行实例的创建modelFiles.forEach((file) {const modelDefinition require(path.join(__dirname, file));// sequelize.define 会返回模型const model sequelize.define(modelDefinition.modelName,{...modelDefinition.attributes,},modelDefinition.options,);// 把创建好的实例存到对象models中键名为对应js文件中定义的modelName键值为model实例models[modelDefinition.modelName] model;});try {await sequelize.authenticate();logger.info(MYSQL连接成功 ${config.mysql.host}:${config.mysql.port});} catch (error) {logger.error(MYSQL连接失败[${config.mysql.host}:${config.mysql.port}] :${error});return null;}return sequelize; };module.exports {initModels,models,sequelize, };if (require.main module) {sequelize.authenticate().then(() {console.log(Connection has been established successfully.);}).catch((error) {console.error(Unable to connect to the database:, error);}); }定义属性则跟上文一样在对应的js文件中例如 // MultiAccount.jsconst { DataTypes } require(sequelize);module.exports {modelName: MultiAccount,attributes: {fb_time: {type: DataTypes.CHAR,defaultValue: ,},fb_id: {type: DataTypes.INTEGER,defaultValue: ,},fb_userid: {type: DataTypes.INTEGER,defaultValue: ,},target_userid: {type: DataTypes.INTEGER,defaultValue: ,},target_login_time: {type: DataTypes.CHAR,defaultValue: ,},rela_users: {type: DataTypes.CHAR,defaultValue: ,},target_type: {type: DataTypes.INTEGER,defaultValue: ,},qa_content: {type: DataTypes.CHAR,defaultValue: ,},qa_pics: {type: DataTypes.CHAR,defaultValue: ,},status: {type: DataTypes.INTEGER,defaultValue: 0,},sorts: {type: DataTypes.CHAR,defaultValue: ,},create_time: {type: DataTypes.CHAR,defaultValue: ,},},options: {tableName: multi_account,createdAt: false,// 不自动增加createdAt数据创建时间字段默认为trueupdatedAt: false,// 不自动增加updatedAt数据更新时间字段默认为true}, }; 2.2操作数据库 操作数据库就可以使用Sequelize内置的方法了这里用我的查询接口为例接口可以支持日期、状态、分类、分页查询所以需要动态给where添加相应的条件 let where {}// 查询条件static async getFbList(ctx) {const { start_time, end_time, status -1, sort -1, page, pageSize } ctx.request.body//日期查询默认当天数据前端传过来if (start_time end_time) {where {...where,fb_time: {[Op.between]: [start_time, end_time]}}}//状态查询(默认为-1全部数据)if (status ! -1) {where {...where,status: {[Op.eq]: [status]}}}//分类查询if (sort ! -1) {where {...where,sorts: {[Op.eq]: [sort]}}}//当前查询条件下的数据总数const total await models.MultiAccount.count({where: where})//当前查询条件下的数据列表offset为去掉前多少个数据limit为每页数据的数量order是根据fb_time这个字段来排序const fb_list await models.MultiAccount.findAll({where: where, limit: Number(pageSize), offset: Number((page - 1)*pageSize), order:[[fb_time]] });//查询成功后重置查询条件where {}ctx.body {list: fb_list,total,};} 框架其他的一些方法可以看下以下文章 1、使用Sequelize - 廖雪峰的官方网站 (liaoxuefeng.com) 2、使用Sequelize模块操作数据库之增删改查_sequelize修改语句-CSDN博客 3、模型查询(基础) | Sequelize中文文档 | Sequelize中文网
http://www.w-s-a.com/news/954580/

相关文章:

  • 网站优化关键词排名自己怎么做wordpress安装主题失败
  • 成都建设银行招聘网站网站的切换语言都是怎么做的
  • 网站网业设计wordpress 很差
  • 网站开发软件著作权归谁网站悬浮窗广告
  • 如何提升网站alexa排名货运网站源码
  • 如何看自己网站流量梧州网站设计理念
  • 商城网站建设特点有哪些信息门户
  • 弄一个网站临沂有哪几家做网站的
  • 广州个人网站制作公司网站建设公司价
  • 免费建设网站赚钱小程序开发文档pdf
  • ucenter 整合两个数据库网站网店推广技巧
  • 网站优化排名提升百度wap
  • 八里河风景区网站建设内容摘要网站开发基础学习
  • 上海做外贸网站的公司智慧团建网站登陆平台
  • 上海商务网站建设如何做的网站手机可以用吗
  • 产品推广营销方案seo推广员招聘
  • 做水利网站需要多少钱山东市网站建设
  • 做网站找哪里如何修改wordpress颜色
  • 招商加盟网站系统站长工具 seo查询
  • 工商局网站清算组备案怎么做电商培训机构
  • 做好门户网站建设做本地团购网站怎么样
  • wordpress主题和预览不同20条优化防疫措施方案
  • 艾奇视觉网站建设网站推广需要几个人做
  • 2008 iis 添加网站wordpress固定链接标签加上页面
  • 宁波企业网站制作推荐网站优化人员
  • 大型资讯门户网站怎么做排名沈阳建设工程有限公司
  • 开发中英文切换网站如何做江苏网站建设费用
  • 网站论文首页布局技巧桥东网站建设
  • 网站开发项目经理工资北京微信网站
  • 山西山西省建设厅网站微信备份如何转换为wordpress