如果存在则更新记录,否则在环回中根据 id 创建新记录
update record if exist else create new record based by id in loopback
我正在尝试更新记录(如果存在),否则我想创建新记录,
我尝试了 findById 函数,但是当我尝试在其中添加新记录时出现此错误:
create() 不是函数 ..
这是我的代码:
Userpost.isMyPost = function (data , req, cb) {
Userpost.findById(data.id, (err, Userpost) => {
if (!err && Userpost) {
Userpost.create({
U_ID: "1" ,
imageUrl: "ss" ,
userLike : "aa" ,
sharedFrom: "ss",
isDeleted : false ,
isFav : true
}, function(err, Userpost) {
cb(err , Userpost);
});
} else {
cb (err, {});
}
});
}
看起来你已经用返回的数据值覆盖了 Userpost
模型,所以你没有 .create()
和所有其他方法。
尝试用一些不同的变量名称替换 (err, Userpost) => ...
,例如(err, response) => ....
在你的 findById
回调函数中:
示例:
Userpost.isMyPost = function (data , req, cb) {
Userpost.findById(data.id, (err, response) => {
if (!err && response) {
Userpost.create({
U_ID: "1" ,
imageUrl: "ss" ,
userLike: "aa" ,
sharedFrom: "ss",
isDeleted: false ,
isFav: true
}, function(err, response) {
cb(err, response);
});
} else {
cb(err, {});
}
});
}
我正在尝试更新记录(如果存在),否则我想创建新记录, 我尝试了 findById 函数,但是当我尝试在其中添加新记录时出现此错误: create() 不是函数 .. 这是我的代码:
Userpost.isMyPost = function (data , req, cb) {
Userpost.findById(data.id, (err, Userpost) => {
if (!err && Userpost) {
Userpost.create({
U_ID: "1" ,
imageUrl: "ss" ,
userLike : "aa" ,
sharedFrom: "ss",
isDeleted : false ,
isFav : true
}, function(err, Userpost) {
cb(err , Userpost);
});
} else {
cb (err, {});
}
});
}
看起来你已经用返回的数据值覆盖了 Userpost
模型,所以你没有 .create()
和所有其他方法。
尝试用一些不同的变量名称替换 (err, Userpost) => ...
,例如(err, response) => ....
在你的 findById
回调函数中:
示例:
Userpost.isMyPost = function (data , req, cb) {
Userpost.findById(data.id, (err, response) => {
if (!err && response) {
Userpost.create({
U_ID: "1" ,
imageUrl: "ss" ,
userLike: "aa" ,
sharedFrom: "ss",
isDeleted: false ,
isFav: true
}, function(err, response) {
cb(err, response);
});
} else {
cb(err, {});
}
});
}