W jaki sposób możemy wykonać wycofywanie niestandardowych transformowanych danych

Używam niestandardowej transformacji w jednym z moich modeli w następujący sposób:

 App.Question = DS.Model.extend({
        questionName: DS.attr('string'),
        parentQuestionId: DS.attr('number'),
        position: DS.attr('number'),
        questionLayoutId: DS.attr('number'),
        questionLayoutName: DS.attr('string'),
        attributes: DS.attr('raw'),
        childQuestions: DS.hasMany('question', {async: true})
    });

a moja transformacja jest zdefiniowana jako:

 App.RawTransform = DS.Transform.extend({

        deserialize: function (serialized) {
            var obbj = Ember.Object.create();
            for (var key in serialized) {
                obbj.set(key, serialized[key]);
            }
            return  obbj;
        },
        serialize: function (deserialized) {
            return JSON.stringify(deserialized);
        }
    });

Dzięki tej konfiguracji wycofywanie nie działa dla przekształconych właściwości. Oto link jsBin do demo problemu:http://jsbin.com/uBAZOfO/1/

więc jeśli zmienisz pola wejściowe i wciśniesz rollback, tylko nazwa zostanie wycofana. Czy jest jakieś obejście w celu przywrócenia danych przekształconych?

Dzięki, Dee

questionAnswers(2)

yourAnswerToTheQuestion