按关系筛选模型

时间:2014-02-17 01:42:05

标签: ember.js ember-data

通过其中一个正常属性过滤模型非常简单,我得到了它的工作:

filteredModel: function() {
    return this.get("model").filterBy("property", filter);
}.property("model")

但现在我的问题是,如何通过hasMany关系过滤该模型? 我的模型(视频)有“标签”,例如,我想要显示带有“已绘制”标签的视频。

我怎么能实现这个目标?

1 个答案:

答案 0 :(得分:2)

ArrayController中加入以下内容:

filtered: function() {
  return this.get('content').filter(function(item, index, enumerable){
    var result = false;
    item.get('tags').forEach( function(tag) {
        if (tag.get('name') === 'drawn') result = true;
    });
    return result;
  });
}.property('content.@each')