egg.js 24.9sequelize模型-批量新增和修改器
Posted 2019ab
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了egg.js 24.9sequelize模型-批量新增和修改器相关的知识,希望对你有一定的参考价值。
批量新增
async create() {
// await this.app.model.User.create({
// username:'张三',
// password:'123456',
// sex:'男'
// });
// 批量新增 bulkCreate
let res = await this.app.model.User.bulkCreate([{
username:'张3',
password:'123456',
sex:'男'
},{
username:'张1',
password:'12',
sex:'男'
},{
username:'张2',
password:'777',
sex:'男'
}]);
// 成功
this.ctx.body = res;
}
// 修改器
// app / model / user.js
'use strict';
module.exports = app => {
const { STRING, INTEGER, DATE ,ENUM } = 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},
password: {
type: STRING(200),
allowNull: false,
defaultValue: '' ,
// 修改器 可以很方便的处理数据
set(val){
let hash = val + '123456';
this.setDataValue('password',hash);
}
},
avatar_url: { type: STRING(200), allowNull: true, defaultValue: '' },
sex: { type: ENUM, values: ['男','女','保密'], allowNull: true, defaultValue: '男', comment: '用户性别'},
created_at: DATE,
updated_at: DATE
},{
timestamps: true, // 是否自动写入时间戳
tableName: 'user', // 自定义数据表名称
});
return User;
};
下图是我们利用数据库迁移生成的数据
好了,感谢大家观看,我们下期再见
以上是关于egg.js 24.9sequelize模型-批量新增和修改器的主要内容,如果未能解决你的问题,请参考以下文章
egg.js 24.15sequelize模型-删除和批量删除
egg.js 24.12sequelize模型-where操作符