0

我有两个模型:

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”中?

4

1 回答 1

3

DS.hasMany 实例化一个 DS.ManyArray,它扩展了一个 DS.RecordArray,它扩展了一个普通的 Em.ArrayProxy。您应该能够courses.contains(test object)查看它是否已经在集合中。添加和删​​除课程应该只是使用 pushObject 和 removeObject 的问题:

courses.pushObject(object);

...

courses.removeObject(object);
于 2013-10-09T14:53:42.127 回答