Ich muss ein neues Element erstellen und aktualisieren Sie von "aktuellen Angebot" und das alte Angebot als "Previews Angebot". Das ist, was ich habe:Setzen Zeiger mit Parse-Server 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);
}
});
});
tue ich in den Angeboten Tabelle ein neues Angebot erstellen, aber ich bekomme die folgende Fehlermeldung für den Status in der Exchange-Tabelle zu ändern:
{"code":111,"error":"schema mismatch for Exchange.previousOffer;
expected Pointer<Offer> but got Object"}
Ich verstehe es erwartet ein Zeiger, aber ich weiß nicht, wie man einen Zeiger setzt. Kann jemand helfen?
Ich arbeite nicht wirklich. - 'previousOffer' wird' currentOffer' Daten (großartig!), Aber es wird nicht in der Datenbank gespeichert; - 'currentOffer' bekommt die newOffer-Struktur und jetzt glaube ich nicht, dass es richtig ist. es erhält die Austauschsammelstruktur. Irgendwelche Ideen warum es passiert? –
Ich habe nicht wirklich verstanden, was Sie sagen wollen. Vielleicht könnten Sie die Frage mit neueren Details bearbeiten? und genau feststellen, was das Problem ist? – ZeekHuge
BTW Warum ist das 'currentOffer'-Feld von' ex' getting 'newOffer' Struktur nicht korrekt? Ist das nicht was du willst? – ZeekHuge