2016-11-14 3 views
0

Ich möchte die Attribute im Modell ändern.
models/example.js:Ember.js: So ändern Sie Daten in RESTSerializer

export default DS.Model.extend({ 
    value: DS.attr('number'), 

    modified_value: function() { 
    /*Some Calculations*/ 
    return modified_value 
    }.property('value'), 
}) 

obige Code funktioniert gut, aber es schafft ein weiteres zusätzliches Attribut in Modell. Um dies zu vermeiden, möchte ich es in den RESTSerializer verschieben. Wie macht man das ?

Antwort

0

Erstellen Sie eine neue Datei (example.js) in Verzeichnistransformationen.

export default DS.Transform.extend({ 
    deserialize: function(serialized) { 
    return serialized; 
    // if (serialized) { 
    // return JSON.stringify(serialized); 
    // } else { 
    // return ''; 
    // } 
    }, 

    serialize: function(deserialized) { 
    return deserialized; 
    // if (deserialized) { 
    // return JSON.stringify(deserialized); 
    // } else { 
    // return []; 
    // } 
    } 
}); 

In Ihrer Modelldatei Beispiel die attr zu DS.attr ändern ('Beispiel')

export default DS.Model.extend({ 
    value: DS.attr('example'), 
Verwandte Themen