初始化项目
- 新建一个文件夹,用vs code打开文件夹,运行(中间过程可以一直按回车,根目录下出现package.json即可)
npm init
- 添入nodemon开发工具,为了方便开发(在开发过程中可能需要不断的调整代码,使用nodemon可以避免每次调整完毕都需要关闭系统重新启动)
npm install nodemon --save--dev
- 引入express和mongoose
npm install express --save
npm install mongoose --save
-
此时package.json:
-
在根目录下新建app.js文件,写入:
//引入express和mongoose
const express = require('express');
const mongoose = require('mongoose');
var app = express();
//监听端口3000
app.listen(3000);
//输出测试
console.log('you are listening to port 3000');
- 修改package.json:
将main中的index.js改为app.js
在scripts中添加:“start”: “nodemon app”,
- 运行
nodemon app
- 出现以下图片即运行成功
数据库创建
-
在根目录下创建:
-
其中article是创建文章数据库信息,而user是创建用户的数据库信息,我这边创建的表单结构是:
-
于是,用户数据库创建为user.js:
let mongoose = require('mongoose');
let userSchema = mongoose.Schema({
username: {
type: String,
unique: true,
required: true
},
email: {
type: String,
required: true
},
password: {
type: String,
required: true
},
photo: {
type: String,
default: 'none'
}
});
module.exports = mongoose.model('User', userSchema);
- 文章数据库创建为article.js:
let mongoose = require('mongoose');
let articleSchema = mongoose.Schema({
title: {
type: String,
required: true
},
author: {
type: String
},
time:{
type: String
},
content: {
type: String,
required: true
},
isDel: {
type: Number,
default: 0
},
comments: [
{
user: String,
message: String,
comTime: {
type: String
}
}
]
});
module.exports = mongoose.model('Article', articleSchema);
- 在app.js中添加数据库监听
const express = require('express');
const mongoose = require('mongoose');
var app = express();
// 连接数据库
mongoose.connect("mongodb://127.0.0.1/myblog");
// 监听
let db = mongoose.connection;
db.once('open', function() {
console.log('Connected to Mongodb');
})
db.on('error', function(err) {
console.log(err);
});
app.listen(3000);
console.log('you are listening to port 3000');
- 运行 nodemon app, 已连接上数据库