0

私は2つのモデルを持っています:

App.Administrator = DS.Model.extend({
  name:    DS.attr('string'),
  courses: DS.hasMany('course', {async: true})
});

App.Course = DS.Model.extend({
  title: DS.attr('string')
})

「管理者の編集」ページで、コースごとに 1 つのチェックボックスのリストを表示して、1 つを選択すると「model.courses」にプッシュされ、選択を解除すると「model.courses」から削除されます。

しかし、主な質問は次のとおりです。コースが既に「model.courses」内にあるかどうかを確認するにはどうすればよいですか?

4

1 に答える 1

3

DS.hasMany は、ありふれた Em.ArrayProxy を拡張する DS.RecordArray を拡張する DS.ManyArray をインスタンス化します。courses.contains(test object)すでにコレクションにあるかどうかを確認することができるはずです。コースの追加と削除は、pushObject と removeObject を使用するだけです。

courses.pushObject(object);

...

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