4
我想添加一个类别,然后如果成功,推它的用户'收集ref。这就是我如何做到这一点:猫鼬 - 推送裁判 - 无法读取属性“推”的未定义
这是我的“dashboard.js”文件,其中包含类别架构。
var users = require('./users');
var category = mongoose.model('categories', new mongoose.Schema({
_id: String,
name: String,
ownerId: { type: String, ref: 'users' }
}));
router.post('/settings/addCategory', function(req, res, next) {
console.log(req.body);
var category_toAdd = new category();
category_toAdd._id = mongoose.Types.ObjectId();
category_toAdd.name = req.body.categoryName;
category_toAdd.ownerId = req.body.ownerId;
category.findOne({
name: req.body.categoryName,
ownerId: req.body.ownerId
}, function(error, result) {
if(error) console.log(error);
else {
if(result === null) {
category_toAdd.save(function(error) {
if(error) console.log(error);
else {
console.log("Added category: " + category_toAdd);
<<<<<<<<<<<<<<<<<<<THE CONSOLE LOG WORKS GOOD
users.categories.push(category_toAdd);
}
});
}
}
});
这里是我的 “users.js” 文件,其中包含 “用户” 模式。
var categories = require('./dashboard');
var user = mongoose.model('users', new mongoose.Schema({
_id: String,
login: String,
password: String,
email: String,
categories: [{ type: String, ref: 'categories' }]
}));
因此,分类添加过程效果很好,我可以在数据库中找到类别。问题是当我试图将类别推送给用户时。
这条线:
users.categories.push(category_toAdd);
我得到这个错误:
Cannot read property "push" of undefined.
我必须承认一次,在此之前推有CONSOLE.LOG在类别正确打印。
谢谢你的时间。