-
Notifications
You must be signed in to change notification settings - Fork 143
/
Copy pathmovie.js
73 lines (71 loc) · 1.74 KB
/
movie.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
const express = require('express')
const router = express.Router()
const Movie = require('../models/movie')
// 查询所有电影
router.get('/movie', (req, res) => {
Movie.find({})
.sort({ update_at : -1})
.then(movies => {
res.json(movies)
})
.catch(err => {
res.json(err)
})
})
// 通过ObjectId查询单个电影
router.get('/movie/:id', (req, res) => {
Movie.findById(req.params.id)
.then(movie => {
res.json(movie)
})
.catch(err => {
res.json(err)
})
})
// 添加一部电影
router.post('/movie', (req, res) => {
//使用Movie model上的create方法储存数据
Movie.create(req.body, (err, movie) => {
if (err) {
res.json(err)
} else {
res.json(movie)
}
})
//使用实例的save方法存储数据
// let movie = new Movie({
// title : req.body.title,
// year : req.body.year,
// poster : req.body.poster,
// introduction : req.body.introduction
// })
// movie.save( (err,movie) => {
// if (err) {
// res.json(err)
// } else {
// res.json(movie)
// }
// })
})
//更新一部电影
router.put('/movie/:id',(req,res) => {
Movie.findOneAndUpdate({ _id : req.params.id}
,{ $set : { title: req.body.title,
rating : req.body.rating,
poster : req.body.poster,
introduction : req.body.introduction }
},{
new : true
})
.then(movie => res.json(movie))
.catch(err => res.json(err))
})
//删除一部电影
router.delete('/movie/:id',(req,res) => {
Movie.findOneAndRemove({
_id : req.params.id
})
.then(movie => res.send(`${movie.title}删除成功`))
.catch(err => res.json(err))
})
module.exports = router