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

桂林商品房做民宿在哪个网站登记好广州关键词快速排名

桂林商品房做民宿在哪个网站登记好,广州关键词快速排名,小程序订单管理系统,校园网搭建egg.js sequelize数据库操作配置 文章目录 egg.js sequelize数据库操作配置1. 数据库配置2. 迁移配置3.数据表设计和迁移4.模型创建 1. 数据库配置 安装并配置egg-sequelize插件(它会辅助我们将定义好的 Model 对象加载到 app 和 ctx 上)和mysql2模块&a…

egg.js sequelize数据库操作配置

文章目录

  • egg.js sequelize数据库操作配置
    • 1. 数据库配置
    • 2. 迁移配置
    • 3.数据表设计和迁移
    • 4.模型创建

1. 数据库配置

  • 安装并配置egg-sequelize插件(它会辅助我们将定义好的 Model 对象加载到 app 和 ctx 上)和mysql2模块:
npm install --save egg-sequelize mysql2
  • 在config/plugin.js中引入 egg-sequelize插件
exports.sequelize = {enable: true,package: "egg-sequelize",
};
  • 在config/config.default.js
config.sequelize = {dialect: "mysql",host: "127.0.0.1",username: "root",password: "root",port: 3306,database: "egg-wechat",// 中国时区timezone: "+08:00",define: {// 取消数据表名复数freezeTableName: true,// 自动写入时间戳 created_at updated_attimestamps: true,// 字段生成软删除时间戳 deleted_at// paranoid: true,createdAt: "created_at",updatedAt: "updated_at",// deletedAt: 'deleted_at',// 所有驼峰命名格式化underscored: true,},
};

2. 迁移配置

sequelize 提供了sequelize-cli工具来实现Migrations,我们也可以在 egg 项目中引入 sequelize-cli。

npm install --save-dev sequelize-cli

egg 项目中,我们希望将所有数据库 Migrations 相关的内容都放在database目录下,所以我们在项目根目录下新建一个.sequelizerc配置文件:

"use strict";const path = require("path");module.exports = {config: path.join(__dirname, "database/config.json"),"migrations-path": path.join(__dirname, "database/migrations"),"seeders-path": path.join(__dirname, "database/seeders"),"models-path": path.join(__dirname, "app/model"),
};

初始化 Migrations 配置文件和目录

npx sequelize init:config
npx sequelize init:migrations
# npx sequelize init:models

运行完后会生成database/config.json文件和database/migrations目录,我们修改一下database/config.json中的内容,将其改成我们项目中使用的数据库配置:

{"development": {"username": "root","password": null,"database": "eggapi","host": "127.0.0.1","dialect": "mysql","timezone": "+08:00"}
}

创建数据库

npx sequelize db:create
# 升级数据库
npx sequelize db:migrate
# 如果有问题需要回滚,可以通过 `db:migrate:undo` 回退一个变更
# npx sequelize db:migrate:undo
# 可以通过 `db:migrate:undo:all` 回退到初始状态
# npx sequelize db:migrate:undo:all

3.数据表设计和迁移

创建数据迁移表

npx sequelize migration:generate --name=user

1.执行完命令后,会在database / migrations / 目录下生成数据表迁移文件,然后定义

"use strict";module.exports = {up: async (queryInterface, Sequelize) => {const { INTEGER, STRING, DATE, ENUM } = Sequelize;// 创建表await queryInterface.createTable("user", {id: {type: INTEGER(20).UNSIGNED,primaryKey: true,autoIncrement: true,},username: {type: STRING(30),allowNull: false,defaultValue: "",comment: "用户名称",unique: true,},nickname: {type: STRING(30),allowNull: false,defaultValue: "",comment: "...",},email: {type: STRING(160),comment: "用户邮箱",unique: true,},password: {type: STRING(200),allowNull: false,defaultValue: "",},avatar: {type: STRING(200),allowNull: true,defaultValue: "",},phone: {type: STRING(20),comment: "用户手机",unique: true,},sex: {type: ENUM,values: ["男", "女", "保密"],allowNull: true,defaultValue: "男",comment: "用户性别",},status: {type: INTEGER(1),allowNull: false,defaultValue: 1,comment: "状态",},sign: {type: STRING(200),allowNull: true,defaultValue: "",comment: "个性签名",},area: {type: STRING(200),allowNull: true,defaultValue: "",comment: "地区",},created_at: DATE,updated_at: DATE,});},down: async (queryInterface) => {await queryInterface.dropTable("user");},
};

执行 migrate 进行数据库变更

npx sequelize db:migrate

4.模型创建

// app/model/user.js
"use strict";
module.exports = (app) => {const { STRING, INTEGER, DATE, ENUM, TEXT } = app.Sequelize;// 配置(重要:一定要配置详细,一定要!!!)const User = app.model.define("user", {id: {type: INTEGER(20).UNSIGNED,primaryKey: true,autoIncrement: true,},username: {type: STRING(30),allowNull: false,defaultValue: "",comment: "用户名称",unique: true,},nickname: {type: STRING(30),allowNull: false,defaultValue: "",comment: "...",},email: {type: STRING(160),comment: "用户邮箱",unique: true,},password: {type: STRING(200),allowNull: false,defaultValue: "",},avatar: {type: STRING(200),allowNull: true,defaultValue: "",},phone: {type: STRING(20),comment: "用户手机",unique: true,},sex: {type: ENUM,values: ["男", "女", "保密"],allowNull: true,defaultValue: "男",comment: "用户性别",},status: {type: INTEGER(1),allowNull: false,defaultValue: 1,comment: "状态",},sign: {type: STRING(200),allowNull: true,defaultValue: "",comment: "个性签名",},area: {type: STRING(200),allowNull: true,defaultValue: "",comment: "地区",},created_at: DATE,updated_at: DATE,});return User;
};
http://www.qdjiajiao.com/news/1543.html

相关文章:

  • 建立网站最好的模板网站开发技术有哪些
  • 网站分几种定制网站开发
  • p2p网站建设报价2p排名网站模板建站
  • 怎么做公司网站的二维码关键词优化排名的步骤
  • 有源码做网站百度资源搜索引擎
  • 长沙市网站制作电话网站优化要做哪些
  • 潍坊手机网站全国疫情最新情况最新消息今天
  • 家居网站应该怎么做恶意点击软件有哪些
  • 怎么给自己网站做推广网络营销推广渠道
  • 网络销售入门基本知识重庆seo公司
  • 网站建设哈尔滨百度网盘官方下载
  • 做网站的顺序优化最狠的手机优化软件
  • ps怎么排版规划设计网站网站seo分析常用的工具是
  • 做家常菜网站制作公司官网多少钱
  • 做企业网站的字体大小要求百度app平台
  • 中企动力销售赚得多吗win7优化
  • 中国建设监理业协会网站查询关键词排名软件
  • 太原手机网站设计纵横seo
  • 订阅号如何做微网站怎么做百度推广平台
  • 新乡网站建设方案seo优化什么意思
  • 一个互联网公司可以做几个网站软件外包网站
  • 旅游做网站淘词神器
  • 做网站怎么做付费推广模板之家官网
  • 什么网站可以直接做word外贸接单十大网站
  • 洛阳有建社网站的吗编程培训班学费一般多少钱
  • 营销型网站设计模板百度站长统计工具
  • 怎么在网站上做推seo排名优化
  • 外贸网站建设soho百度信息流推广平台
  • 采招网福建网络seo关键词优化教程
  • 公司要找网站公司互动营销的案例及分析