Post 相同的 objectID 到不同的 table
Post same objectID in to different table
我正在尝试 post 我的用户中的数据,然后同时 post 我的用户的 _id 作为我捐赠中的参考 ID table。
在我 post 像这样在用户 table 中编辑我的数据之后:
var User = require('../models/user');
var Blooddonation = require('../models/blooddonation');
router.post('/createBlooduser',function(req, res) {
var user = new User();
user.user_lastname = req.body.user_lastname;
user.status= "initial";
user.save(function(err) {});
});
如何获取 posted 数据的 _id 并在我的捐赠 table 中创建参考 ID?像这样:
**users.json**
{
_id:ObjectId("5c7e591eee959272cc5768cb"),
user_lastname:"Jhonson",
status:"initial"
}
**blooddonations.json**
{
donor_id:ObjectId("5c7e591eee959272cc5768cb")
}
_id
属性 实际上是在您使用 new User()
这样的语句创建新实例时立即创建的。因此,您实际上可以在 之前 访问该值,它甚至存储在集合中,或者在创建实例之后的任何时间:
router.post('/createBlooduser',function(req, res) {
var user = new User();
user.user_lastname = req.body.user_lastname;
user.status= "initial";
user.save(function(err) {
if (err) throw err; // or really handle better
// You can also just create() rather than new Blooddonation({ donor_id: user._id })
Blooddonation.create({ donor_id: user._id }, function(err, donor) {
// check for errors and/or respond
})
});
});
如果您可能只想访问可能 "default on save" 的其他属性,那么您可以从 save()
或 create()
:
的回调中访问
router.post('/createBlooduser',function(req, res) {
User.create({
user_lastname: req.body.user_lastname;
status: "initial"
}, function(err, user) { // this time we pass from the callback
if (err) throw err; // or really handle better
Blooddonation.create({ donor_id: user._id }, function(err, donor) {
// check for errors and/or respond
});
});
});
我正在尝试 post 我的用户中的数据,然后同时 post 我的用户的 _id 作为我捐赠中的参考 ID table。
在我 post 像这样在用户 table 中编辑我的数据之后:
var User = require('../models/user');
var Blooddonation = require('../models/blooddonation');
router.post('/createBlooduser',function(req, res) {
var user = new User();
user.user_lastname = req.body.user_lastname;
user.status= "initial";
user.save(function(err) {});
});
如何获取 posted 数据的 _id 并在我的捐赠 table 中创建参考 ID?像这样:
**users.json**
{
_id:ObjectId("5c7e591eee959272cc5768cb"),
user_lastname:"Jhonson",
status:"initial"
}
**blooddonations.json**
{
donor_id:ObjectId("5c7e591eee959272cc5768cb")
}
_id
属性 实际上是在您使用 new User()
这样的语句创建新实例时立即创建的。因此,您实际上可以在 之前 访问该值,它甚至存储在集合中,或者在创建实例之后的任何时间:
router.post('/createBlooduser',function(req, res) {
var user = new User();
user.user_lastname = req.body.user_lastname;
user.status= "initial";
user.save(function(err) {
if (err) throw err; // or really handle better
// You can also just create() rather than new Blooddonation({ donor_id: user._id })
Blooddonation.create({ donor_id: user._id }, function(err, donor) {
// check for errors and/or respond
})
});
});
如果您可能只想访问可能 "default on save" 的其他属性,那么您可以从 save()
或 create()
:
router.post('/createBlooduser',function(req, res) {
User.create({
user_lastname: req.body.user_lastname;
status: "initial"
}, function(err, user) { // this time we pass from the callback
if (err) throw err; // or really handle better
Blooddonation.create({ donor_id: user._id }, function(err, donor) {
// check for errors and/or respond
});
});
});