Extjs wirft Ausnahme auf erfolgreiche Schaffung record „realize wurde mit ungültigen Datenfern namens“

StackOverflow https://stackoverflow.com/questions/2389135

  •  24-09-2019
  •  | 
  •  

Frage

Ich verwende ExtJS in einer Einschienen-Anwendung. Ich verwende einen JsonStore auf Daten zurück zu meinem Controller bestehen bleiben. Ich habe gelesen, aktualisieren und löschen ordnungsgemäß funktioniert. Aber ich kann nicht scheinen, um herauszufinden, wie meine Antwort zurück zu formatieren auf erstellt. Derzeit gibt Firebug mir folgende Fehlermeldung:

  

abgefangene Ausnahme:   Ext.data.DataReader: #realize war   mit ungültigen Remote-Daten bezeichnet.   Bitte beachten Sie die Dokumentation für   Datareader # realize und Bewertung Ihrer   Datareader-Konfiguration.

Ich bin über WTF Dieser Fehler bedeutet flummoxed. Jeder Zeiger haben? Relevante Bits von Code unter:

 var proxy = new Ext.data.HttpProxy({
        api: {
            read: '../foo/bar.rnr',
            create: '../foo/CreateBar.rnr',
            update: '../foo/UpdateBar.rnr',
            destroy: '../foo/DeleteBar.rnr'
        }
    });

    var writer = new Ext.data.JsonWriter({
        encode: true,
        writeAllFields: true,
        listful: true,
        destroyRecord: function(rec) {
            return this.toHash(rec);
        }
    });


    var store = new Ext.data.JsonStore({
        autoLoad: true,
        autoSave: false,
        url: '../foo/bar.rnr',
        method: 'get',
        baseParams: { Id: pageParameters.Id },
        proxy: proxy,
        writer: writer,
        id: 'Id',
        fields: [
            { name: 'Id', type: 'int' },
            { name: 'Name', type: 'string' },
            { name: 'Note', type: 'string', defaultValue: null }

        ]
    });

Meine aktuelle Antwort wie folgt aussieht, aber das ist nach einer Menge von Versuch und Irrtum, so dass es prolly abgespritzt wird.

{"success":true,"message":"OK!","undefined":[]}
War es hilfreich?

Lösung

Sie müssen Datensätze in der Rückkehr JSON-Objekt zurück.

Gehen Sie auf das folgende Beispiel aus meinem Buch, Ext JS in Aktion, die zeigt, wie für crud Aktionen Datenschreiber verwenden.

http://extjsinaction.com/examples/chapter08/usingWriterWithHttpProxy.html

Rechtsklicken Sie einen neuen Datensatz einzufügen. Beachten Sie die Ajax req von Firebug und Sie werden es in Aktion sehen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top