2013-10-09 56 views
0

我有兩個型號:Ember-data:如何檢查記錄是否存在hasMany關係?

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

回答

3

DS.hasMany實例化一個DS.ManyArray,它擴展了DS.RecordArray,它擴展了一般的Em.ArrayProxy。您應該可以執行courses.contains(test object)以查看它是否已經在集合中。添加和刪​​除課程應該只是使用pushObject和的removeObject的問題:

courses.pushObject(object); 

...

courses.removeObject(object); 
+0

謝謝你的回答,它完美! – VoloD