私はNode.jsを使用していますが、Cloudbackコネクタを使用してループバックのデータソースを作成しています。updateAllループバックデータソースは、更新されたデータ内の削除を削除しません。
以下に定義するように私は、Userというモデルを定義している:
var User = db.define('User', {
lastName: { type: String },
firstName: { type: String },
skills: []
});
私は、このモデルのインスタンスを持っているよう:私はインスタンスを更新したい
{
"lastName": "Doe",
"firstName": "John",
"skills": [
{
"id": "0",
"text": "JAVA"
},
{
"id": "1",
"text": "CSS"
},
{
"id": "2",
"text": "HTML"
},
{
"id": 3,
"text": "JAVASCRIPT"
},
{
"id": 4,
"text": ".NET"
}
],
"id": "d981b42c3a2a13da382102c76652b96e"
}
のみスキルアレーようにこの情報は含まれています
"skills": [
{
"id": "0",
"text": "JAVAFX"
},
{
"id": "1",
"text": "CSS3"
}
]
私はこの機能を使用したい:
app.post('/updateProfile', function(req, res) {
User.updateAll(
{_id:req.body.id},
{skills: req.body.skills},
function(err,items){
if(err){
res.send(err);
} else {
res.sendStatus(200);
}
});
});
しかし、私が直面する問題は、同じIDを持つスキルだけが更新されるということです。削除したいもの(この例ではHTML、JAVASCRIPT、.NET)は削除されません。
実際に更新する代わりに、スキルを実際に置き換えることはできますか?私はドキュメントに記述されているいくつかのことを試しましたが、うまくいきません。 Documentation is available here
私は、次のエラーが表示されます – JavascriptDeveloper
essage :。 「コネクタcloudantがreplaceById操作をサポートしていないこれは、ループバックのバグではありません好ましくはGitHubの問題を経由して、コネクタの作者に連絡してください – JavascriptDeveloper
を思い出させてくれてありがとう。私:パッチはまだ検証中ですが、まだリリースされていません。公開されている限り更新します:https://github.com/strongloop/loopback-connector-cloudant/pull/34 –