0

我有具有自定义属性(对象数组)的模型。像这样

App.Adapter.registerTransform('images', {
    serialize: function(value) {
        var ret = []
        value.forEach(function(img){
            ret.pushObject(img.get('uuid'))
        })
        if (ret.get('length')) {
            return ret.join(',')
        } else 
        return false
    },
    deserialize: function(value) {
        ret = []     
        if (typeof value !== 'undefined') {
            uuids = value.split(',')
            for (var i = 0; i < uuids.length; i++) {
                var id = uuids[i]
                ret.pushObject( App.Image.create({'uuid': id}) )
            }
        }
        return ret
    }
})

还有我的模特。

App.Item = DS.Model.extend({
    …
    images:         DS.attr('images')
})

在控制器中我需要提交数据,在推送此属性的更改后。这个案子我需要做什么?

uploadImage: function(){
    var self = this

    uploading.done(function(result) {
            self.get('images').pushObject(App.Image.create({uuid:result.uuid}))
            console.log(self.get('isDirty')) // false
            self.get('store').commit() //nothing to change
    }).fail(function(result) {
     …
    }).always(function() {
     …
    })
},
4

1 回答 1

0

你试过这样做吗?

self.notifyPropertyChange('images');
于 2013-05-14T10:12:09.547 回答