小菜求问,照着教程写的demo。 这里_id报了个错,找不到movie对象。 app.use(bodyParser.urlencoded({ extended: false })); app.use(bodyParser.json()); 这两句也有,请问应该怎么改这里???
页面是这样的
第二个图input(type='hidden', balabala)
这个movie[_id]
对应的input是隐藏的,后面valut='#{movie._id}'
没有值的话就是undefined
喽
问题应该出在你前端POST数据的代码块 打开F12检查POST数据是否有异常 如果使用了$.post,试试先将对象JSON.stringify再POST
另外注意Content-Type,它会影响bodyParser的返回结果
@ayiis 哥,感觉您应该说道点上了,可是小弟初学,道行太浅,有点不明白 var admin = require(’./routes/admin’); app.use(’/admin/movie/new’, admin); 您看我app.js里是这样写的用的是express自己生成的那个demo的路由模式 然后在./routes/admin.js里写的一个get,一个post,请问您说的这两个方法我应该加在哪, 还有您说的数据异常,您看我第一张图左下角的那个黄匡里log出来的数据, 按照常理来说应该是识别不出一个movie对象的,所以也觉得可能是bodyParser缺了什么 拜托您帮看一下应该怎么改 不好意思,我实在是菜鸟,大神再点拨一下
改成这样
app.use(bodyParser.urlencoded({ extended: true }));
其实你不设置 extended, 它默认是就是true, 不过会有一个 deprecated 提示,你的 extended: false
哪里抄的啊
@magicdawn 你是正解
@magicdawn 帅 我是百度的[捂脸]
@jioyou 。。。