为了账号安全,请及时绑定邮箱和手机立即绑定

报告一个逻辑bug

如果提交评论的模板代码如下

form(method="POST", action="/user/comment")
    input(type="hidden", name="comment[movie]", value="#{movie._id}")
    input(type="hidden", name="comment[from]", value="#{user._id}")
    .form-group
        textarea.form-control(name="comment[content]", rows="4")
    .pull-right
        button.btn.btn-primary(type="submit") 提交

在用户没有登录的情况下会报如下错误:

TypeError: Cannot read property '_id' of undefined

因为在用户没有登录的情况下,app.locals.user = _user 的值是undefined,所以上面表单的user._id自然是undefined。

我的解决办法:

if user
    input(type="hidden", name="comment[from]", value="#{user._id}")

即在用户登录的情况下,才读取user._id

正在回答

2 回答

为啥我在登录调试的时候user._id不能给comment[from]赋值,报这个错误CastError: Cast to ObjectId failed for value "undefined" at path "from",求解

0 回复 有任何疑惑可以回复我~

很赞,不能同意更多,建议将这个置顶,避免其他同学踩坑!

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
node建站攻略(二期)——网站升级
  • 参与学习       51919    人
  • 解答问题       423    个

帮助你深入前后端开发留下的迷惑,为进一步自学打下基础

进入课程

报告一个逻辑bug

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号