重置isDirty-flag

时间:2015-04-01 13:38:57

标签: ember.js ember-data

我有两个模型:

// Subject
export default DS.Model.extend({
    willBeActive: DS.attr('boolean')
})

// StudyPlan
export default DS.Model.extend({
    name: DS.attr('string'),
    subjects: DS.hasMany('subjects'),
    havaChanges: function(){
        var isDirty = this.get('isDirty'), 
         subjectsDirty = this.get('subjects').isAny('isDirty', true);
        return subjectsDirty || isDirty;
    }.property('isDirty', 'subjects.@each.isDirty')
})

我使用EmbeddedRecordsMixinActiveModelAdapter将所有已更改的subjects内嵌到studyPlan有效内容中,但是当解析了promise时,每个isDirty标记主题保留在true中。保存isDirty后,如何重置每个subject的{​​{1}}标记?

1 个答案:

答案 0 :(得分:0)

您可能对this package

感兴趣

当子记录变脏时,它将父标记为脏,并在保存父记录时清除子记录中的isDirty字段。