https://github.com/zhchen7/crud
用MongoDB存储数据,node第三方mongoose操作MongoDB数据库。
https://github.com/zhchen7/crud
Last synced: 3 months ago
JSON representation
用MongoDB存储数据,node第三方mongoose操作MongoDB数据库。
- Host: GitHub
- URL: https://github.com/zhchen7/crud
- Owner: ZhChen7
- Created: 2019-02-19T10:01:12.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2022-12-09T13:14:30.000Z (over 2 years ago)
- Last Synced: 2025-01-14T08:24:37.105Z (5 months ago)
- Language: JavaScript
- Homepage:
- Size: 2.54 MB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# CRUD
#### 技术:
### MongoDB+mongoose
##### 关键文件:
student.js
~~~javascript
let mongoose =require('mongoose')
let Schema =mongoose.Schemamongoose.connect('mongodb://localhost/Student', {useNewUrlParser: true});
let commentSchema= new Schema({
name:{
type:String,
require:true
},
gender:{
type:Number,
enum:[0,1],
default:0
},
hobbies:{
type:String,
},
fruits:{
type:String,
}
})module.exports=mongoose.model('Student',commentSchema)
~~~
router.js
~~~javascript
/*
* 路由模块
* */
let express = require('express')
let router = express.Router()let student = require('./student')
router.get('/', function (req, res) {
student.find(function (err, students) {
if (err) {
return res.status(500).send('Serve Error')
}
res.render('index.html', {
students: students
})
})
})
router.get('/students', function (req, res) {
student.find(function (err, students) {
if (err) {
return res.status(500).send('Serve Error')
}
res.render('index.html', {
students: students
})
})})
router.get('/students/new', function (req, res) {
res.render('new.html')
})router.post('/students/new', function (req, res) {
//获取表单数据----req.body
new student(req.body).save(function (err, ret) {
if (err) {
return res.status(500).send('Serve Error')
}
res.redirect('/students')
})})
router.get('/students/edit', function (req, res) {
student.findById(req.query.id.replace(/"/g, ''), function (err, student) {
if (err) {
return res.status(500).send('Serve Error')
}
res.render('edit.html', {
student: student
})})
})
router.post('/students/edit', function (req, res) {
let id = req.body.id.replace(/"/g, '')
student.findByIdAndUpdate(id, req.body, function (err) {
if (err) {
return res.status(500).send('Serve Error')
}
res.redirect('/students')
})
})router.get('/students/delete', function (req, res) {
let id = req.query.id.replace(/"/g, '')
student.findByIdAndRemove(id, function (err) {
if (err) {
return res.status(500).send('Serve Error')
}
res.redirect('/students')
})})
module.exports = router
~~~
app.js
~~~ javascript
/*
* app.js入口模块
* --启动服务
* --做一些服务相关的配置
* --模板引擎
* --body-parser -解析表单post请求体
* --提供静态资源服务
* --挂在路由--app.use(router)
* --监听端口号启动服务
* */let express= require('express')
let router=require('./router')
let bodyParser = require('body-parser')let app=express()
//公开资源
app.use(express.static('public'))
app.use(express.static('node_modules'))app.engine('html',require('express-art-template'))
// parse application/x-www-form-urlencoded
app.use(bodyParser.urlencoded({ extended: false }))
// parse application/json
app.use(bodyParser.json())//把路由容器挂载到app服务中
app.use(router)app.listen(3000,function () {
console.log('app is running!')
})~~~