未在架构中设置Express会话属性

时间:2019-01-31 04:15:01

标签: node.js express mongoose express-session

我正在尝试使用express-session属性在Mongoose文档中设置一个值,但是每当我执行此操作时,它都会返回“路径ownerId是必需的”。

在创建猫鼬模型之前和之后,我都尝试将变量记录到控制台。

router.post('/create', (req, res) => {
  console.group();
  var propertyId = randomString(11);

  var ownerId = req.session.userId;

  console.log("ownerId value: " + ownerId);

  var newProperty = new Property({
    _id: propertyId,
    owner: ownerId,
    address: req.body.address,
    landline: req.body.landline
  });

  console.log("ownerId value: " + ownerId);

  Property.create(newProperty, (err, property) => {
    if (err) {
      res.send(err);
    } else {
      res.send(property);
    }
  });
  console.groupEnd();
});

我希望两个console.log都输出其ID,但我也希望newUser对象包含ID,但是由于我在{{1 }}函数,我知道不是。

1 个答案:

答案 0 :(得分:0)

Path ownerId is required消息

这意味着在您的表模式(Property方案)中定义了一个名为-ownerId的文件,但是当您创建新的Property时,输入数据不包含{{1} }字段。

我看到您的输入数据包括ownerId,只需再次检查您的表架构即可。