在电脑上安装mongodb数据库、mongoose第三方包
const mongoose = require('mongoose');
//设计数据库模型:
//1、连接数据库,qtmall为指定连接的数据库,它不需要存在,当插入第一条数据之后就会自动被创建出来, 第二个参数不加会报错
mongoose.connect('mongodb://localhost:27017/qtmall', {
useUnifiedTopology: true,
useNewUrlParser: true,
useCreateIndex: true
});
// 2、设计集合结构
const UserSchema = new mongoose.Schema({
nickname: {
type: String,
required: true//必须有的字段
unique: true //将这个字段设置为唯一的字段,即用户注册的时候不能与数据库中已有的用户昵称相同
},
password: {
type: String,
required: true
}
});
//3、模型构造函数,一般会将有关数据库的操作另存一个文件,所以会将User导出
// 但这个项目数据库的操作不复杂,故全都放在一个文件,没有导出
/* mongoose.model方法就是用来将一个架构发布为model
第一个参数:传入一个大写名词单数字符串用来表示你的集合名称
mongoose会自动将大写名词的字符串生成小写复数的集合名称
例如这里的User最终会变为 users 集合名称
第二个参数:架构 Schema(即集合结构UserSchema)
返回值:模型构造函数,使用的时候可以通过 new 的方式创建一个User实例,然后存入数据库
也可以通过 User.API() 的方式进行数据库的增删改查,具体的API看mongoose的官方文档*/
const User = mongoose.model('User', UserSchema);
如果要在数据库里对用户的密码进行加密,可以使用 bcrypt 第三方插件(使用MD5不安全)
对密码进行加密,再存进数据库:
验证密码对错: