新しい要素を作成し、それを「現在のオファー」から更新し、古いオファーを「プレビューオファー」として更新する必要があります。これは私が持っているものです。解析サーバーSDKを使用してポインタを設定する
this.saveCounterOffer = function(currentOffer, price) {
price = parseInt(price, 10);
var offers = Parse.Object.extend("Offer");
var exchanges = Parse.Object.extend("Exchange");
var offer = new offers();
var offerQuery = new Parse.Query(offers);
var exchangesQuery = new Parse.Query(exchanges);
var newOffer = Object.assign(offer, currentOffer);
delete newOffer.id;
newOffer.set("price", price);
newOffer.save().then(function(response) {
exchangesQuery.find({
success: function(exchange) {
exchange.forEach(function(ex) {
if(ex.get("currentOffer").id == currentOffer.id) {
//everything works fine until here
ex.set("currentOffer", newOffer);
ex.set("previousOffer", currentOffer);
console.log('Ex:', ex);
ex.save().then(function(response) {
console.log('response', response);
});
}
});
}, error: function(err) {
console.log("error", err);
}
});
});
私は、申し出のテーブルに新しいオファーを作成しますが、私は、Exchangeテーブルの状態を変更するために、次のエラーが表示されます。私はそれを期待しています理解
{"code":111,"error":"schema mismatch for Exchange.previousOffer;
expected Pointer<Offer> but got Object"}
ポインタを設定する方法はわかりません。誰でも助けることができますか?
私は実際には動作しません。 - 'previousOffer'は' currentOffer'データを取得しますが、データベースには保存されません。 - 'currentOffer'はnewOffer構造体を取得しましたが、今は正しいとは思いません。交換コレクション構造を取得します。なぜそれが起こっているのすべてのideias? –
私は本当にあなたが言うことを理解していませんでした。もっと詳細な質問を編集できますか?問題の内容を正確に特定します。 – ZeekHuge
btwなぜ 'ex'の' currentOffer'フィールドが 'newOffer'構造体を取得するのが正しいのですか?それはあなたが望むものではありませんか? – ZeekHuge