node+mongodb 建站攻略(一期)在admin进行录入的时候发生报错如标题,代码如下:admin.jadeextends ../layout
block content
.container
.row
form.form-horizontal(method="post", action="/admin/movie/new")
input(type="hidden", name="movie[_id]", value="#{movie._id}")
.form-group
label.col-sm-2.control-label(for="inputTitle") 电影名字
.col-sm-10
input#inputTitle.form-control(type="text", name="movie[title]", value="#{movie.title}")
.form-group
label.col-sm-2.control-label(for="inputDoctor") 电影导演
.col-sm-10
input#inputDoctor.form-control(type="text", name="movie[doctor]", value="#{movie.doctor}")
.form-group
label.col-sm-2.control-label(for="inputCountry") 国家
.col-sm-10
input#inputCountry.form-control(type="text", name="movie[country]", value="#{movie.country}")
.form-group
label.col-sm-2.control-label(for="inputLanguage") 语种
.col-sm-10
input#inputLanguage.form-control(type="text", name="movie[language]", value="#{movie.language}")
.form-group
label.col-sm-2.control-label(for="inputPoster") 海报地址
.col-sm-10
input#inputPoster.form-control(type="text", name="movie[poster]", value="#{movie.poster}")
.form-group
label.col-sm-2.control-label(for="inputFlash") 片源地址
.col-sm-10
input#inputFlash.form-control(type="text", name="movie[flash]", value="#{movie.flash}")
.form-group
label.col-sm-2.control-label(for="inputYear") 上映年代
.col-sm-10
input#inputYear.form-control(type="text", name="movie[year]", value="#{movie.year}")
.form-group
label.col-sm-2.control-label(for="inputSummary") 电影简介
.col-sm-10
textarea#inputSummary.form-control(type="text", name="movie[summary]", value="#{movie.summary}")
.form-group
.col-sm-offset-2.col-sm-10
button.btn.btn-default(type="submit") 录入app.jsvar express = require('express')
var bodyParser = require('body-parser')
var path = require('path')
var mongoose = require('mongoose')
var _ = require('underscore')
var Movie = require('./models/movie')
var port = process.env.NODE_ENV || 3000
var app = express()
app.set('views', './views/pages')
app.set('view engine', 'jade')
app.use(bodyParser.urlencoded({ extended: false }))
app.use(bodyParser.json())
app.use(express.static(path.join(__dirname, 'bower_components')))
app.listen(port)
console.log('service started on port:' + port)
// admin post movie
app.post('/admin/movie/new', function(res, req){
var id = req.body.movie._id
var movieObj= req.body.movie
var _movie
if (id !== 'undefined') {
Movie.findById(id, function(err, movie) {
if (err) {
console.log(err)
}
_movie = _.extend(movie, movieObj)
_movie.save(function(err, movie) {
if(err){
console.log(err)
}
res.redirect('/movie/' + movie._id)
})
})
}
else {
_movie = new Movie({
doctor: movieObj.doctor,
title: movieObj.title,
country: movieObj.country,
language: movieObj.language,
year: movieObj.year,
poster: movieObj.poster,
summary: movieObj.summary,
falsh: movieObj.falsh
})
_movie.save(function(err, movie) {
if(err) {
console.log(err)
}
res.redirect('/movie/' + movie._id)
})
}
})已经把bodyparser单独安装在本地目录下,在运行时,post数据到地址“/admin/movie/new”,获取不到数据,req是有数据的,但是req.body为undefined不知道是哪里除了问题!!!
1 回答
- 1 回答
- 0 关注
- 678 浏览
添加回答
举报
0/150
提交
取消