【问题标题】:Not all the data on mongoose schema can be posted并非所有关于猫鼬模式的数据都可以发布
【发布时间】:2018-04-06 15:03:09
【问题描述】:

我有一个如下的猫鼬模式:

var myprojectsSchema = new Schema({

        pname: String,
        pnumber: String,
        plocation: String,
        pclient: String,
        clientabn: String,
        contname: String,
        contnumber: String,
        mobile: String,
        address: String,
        city: String,
        country: String,
        pocode: String,
        pdesc: String,
        punit: String,
        pqty: String,
        prate: String,
        pprice: String,


});

Myprojects  = mongoose.model("Myprojects", myprojectsSchema);

当我从表单发布数据时,并非所有数据都可以在 mongo 数据库中看到,我只能看到 mongo 数据库中的前 12 项,但看不到最后 5 项。请注意,我没有最后 5 项我的表格上的项目,但我仍然应该将它们视为数据上的“零”,对吗? (我有另一个架构完全相同的情况,但可以看到架构中的所有项目) 以下是发帖路线:

app.post("/myprojects", function(req,res){

var pname = req.body.pname;
var pnumber = req.body.pnumber;
var plocation = req.body.plocation;
var pclient = req.body.pclient;
var clientabn = req.body.clientabn;
var contname = req.body.contname;
var contnumber = req.body.contnumber;
var mobile = req.body.mobile;
var address = req.body.address;
var city = req.body.city;
var country = req.body.country;
var pocode = req.body.pocode;
var pdesc = req.body.pdesc;
var punit = req.body.punit;
var pqty= req.body.pqty;
var prate= req.body.prate;
var pprice= req.body.pprice;


 var newProject = {
    pname:pname,
    pnumber:pnumber, 
    plocation:plocation, 
    pclient:pclient,
    clientabn:clientabn, 
    contname:contname,
    contnumber:contnumber,
    mobile:mobile, 
    address:address, 
    city:city, 
    country:country, 
    pocode:pocode,
    pdesc:pdesc,
    punit:punit,
    pqty:pqty,
    prate:prate,
    pprice:pprice,
 };

 Myprojects.create(newProject,function(err, newlycreated){
    if(err){console.log(err);}else{
        res.redirect("/myprojects");
    }
  });
});

【问题讨论】:

标签: node.js mongodb express mongoose mongoose-schema


【解决方案1】:

如果某个属性没有可用的值,则该属性被视为undefined。这就是为什么您在 mongodb 中看不到它的原因。

您可以使用如下默认值:

pprice: {
   type: String,
   default: null
}

【讨论】:

  • 感谢 Farhad,但我有另一个模式,非常相似,当我发布没有值的表单时,我仍然可以看到 mongo 上的所有属性为空白属性。l 像属性“”
  • @Sam 如果该表单具有属性并且正在发布,则创建这些属性。在该表单上的 req.body 上尝试 console.log。也请分享该架构以便能够更好地提供帮助:)
猜你喜欢
  • 2019-06-09
  • 2016-08-22
  • 2017-04-01
  • 2023-03-13
  • 1970-01-01
  • 2013-02-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多