我有两种模式:
App.Administrator = DS.Model.extend({
name: DS.attr('string'),
courses: DS.hasMany('course', {async: true})
});
App.Course = DS.Model.extend({
title: DS.attr('string')
})
开"编辑管理员"页面我想显示复选框列表,每个课程一个,以便选择一个将其推送到" model.courses",并取消选择将其从" model.courses"。
但主要问题是:如何检查课程是否已经在内部" model.courses"?
答案 0 :(得分:3)
DS.hasMany实例化一个DS.ManyArray,它扩展了一个DS.RecordArray,它扩展了一个普通的Em.ArrayProxy。您应该能够courses.contains(test object)
查看它是否已经在该集合中。添加和删除课程应该只是使用pushObject和removeObject:
courses.pushObject(object);
...
courses.removeObject(object);