You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Express通过Mongoose保存表单数据到MongoDB时字段丢失问题求助

问题原因

你HTML表单的input、textarea标签的name属性使用了中文全角引号(”),而非标准的英文半角引号("),浏览器解析时会把中文引号识别为name值的一部分,导致提交到后端的字段键名实际为”title”、”body”,和你预期的title、body不一致。
你使用的Mongoose会自动过滤不符合Schema定义的字段,因此这两个异常键名的字段不会被识别存入数据库,最终仅保留系统自动生成的_id和__v字段。

解决方案

将表单标签的name属性引号替换为英文半角引号即可:

修改前错误代码

<input type="text" class="form-control" placeholder="Title" id="title" name=”title”>
<textarea rows="5" id="body" name=”body” ></textarea>

修改后正确代码

<input type="text" class="form-control" placeholder="Title" id="title" name="title">
<textarea rows="5" id="body" name="body" ></textarea>

修改后重新提交表单,后端即可正常拿到title、body字段,MongoDB也会正常存入对应业务字段。

内容的提问来源于stack exchange,提问作者user3567761

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 20:45:08