如何检查具有相同关系的模型?

杰德·桑德(Kit Sunde)

鉴于:

App.Chart = DS.Model.extend({
  tags: DS.hasMany('tag'),

  sameTag: function() {
    var id = this.get('id');
    var tags = this.get('tags');
    return this.store.filter('chart', function(q) {
      return Ember.isEqual(q.get('tags'), tags);
    });
  }.property('tags')
});


App.Tag = DS.Model.extend();

失败,因为即使两个模型具有相同的标签并且它们都加载了标签Ember.isEqual(q.get('tags'), tags),在OrderedSets上也是false如此。取而代之的是,我必须进行一个计算后的属性,该属性可以使我使用Ember.isEqual

App.Chart = DS.Model.extend({
  tags: DS.hasMany('tag'),

  sameTag: function() {
    var id = this.get('id');
    var tags = this.get('_tagsKey');
    return this.store.filter('chart', function(q) {
      return Ember.isEqual(q.get('_tagsKey'), tags);
    });
  }.property(),

  _tagsKey: function(){
    var tags = [];
    this.get('tags').forEach(function(tag){
      tags.push(tag.id);
    });
    return tags.join(",");
  }.property('tags')
});

这是一个非常复杂的解决方法。

登图治克

如果我的想法正确,请执行以下操作:

sameTag: function() {
  var tags = this.get('tags')
    , ids = tags.mapBy('id').join('');

  return this.store.filter('chart', function(q) {
    return q.get('tags').mapBy('id').join('') === ids;
  });
}.property('tags')

这仍然有点贵,但应该可以完成工作。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在模型上定义多个具有相同(父)类型的hasMany关系?

来自分类Dev

如何为具有相同关系的两个外键的模型编写关联?

来自分类Dev

如何检查主干集合是否已包含具有相同 idAttribute 的模型?

来自分类Dev

具有循环关系的Django模型关系

来自分类Dev

Django RF。如何获得具有嵌套关系的Django模型

来自分类Dev

如何创建/注册具有belongs_to 关系的用户模型?

来自分类Dev

使用具有相同模型的多对多关系的正确方法是什么

来自分类Dev

如何检查矩阵(数组)是否具有与行相同的列

来自分类Dev

如何检查是否在列表列表具有相同的长度

来自分类Dev

如何检查数组是否具有相同的对象React Native

来自分类Dev

如何建立与自身和其他模型具有多对多关系的模型并允许排序?

来自分类Dev

建立具有关系的模型响应

来自分类Dev

模型具有多个关系的命名约定

来自分类Dev

具有枚举值关系的通用模型

来自分类Dev

模型具有多个关系的命名约定

来自分类Dev

如何编写用于创建模型并具有引用相同模型的函数的for循环

来自分类Dev

具有相同或相似字段的Django模型

来自分类Dev

具有几乎相同属性的模型

来自分类Dev

具有相同模型的多个表

来自分类Dev

当两个表具有相同的列名时,在加入关系表后对模型进行排序

来自分类Dev

具有相同反向访问器的同一模型的一对一和一对多关系

来自分类Dev

蟒蛇:如何检查字符串是否具有相同的字符/重复它们的概率相同

来自分类Dev

SequelizeJS关系,相同模型

来自分类Dev

如何静态检查可能具有或不具有相同签名的两个功能是否相同?

来自分类Dev

如何返回具有在Laravel 5.2中加载的选定列和渴望的关系的模型的集合

来自分类Dev

Django模型,具有反向引用的一对多关系[如何]

来自分类Dev

如何链接在Rails中具有多对多关系的模型?

来自分类Dev

如何在Ember.js中保存具有多对多关系的模型?

来自分类Dev

如何使用具有关系Laravel的模型获得单个元素

Related 相关文章

  1. 1

    如何在模型上定义多个具有相同(父)类型的hasMany关系?

  2. 2

    如何为具有相同关系的两个外键的模型编写关联?

  3. 3

    如何检查主干集合是否已包含具有相同 idAttribute 的模型?

  4. 4

    具有循环关系的Django模型关系

  5. 5

    Django RF。如何获得具有嵌套关系的Django模型

  6. 6

    如何创建/注册具有belongs_to 关系的用户模型?

  7. 7

    使用具有相同模型的多对多关系的正确方法是什么

  8. 8

    如何检查矩阵(数组)是否具有与行相同的列

  9. 9

    如何检查是否在列表列表具有相同的长度

  10. 10

    如何检查数组是否具有相同的对象React Native

  11. 11

    如何建立与自身和其他模型具有多对多关系的模型并允许排序?

  12. 12

    建立具有关系的模型响应

  13. 13

    模型具有多个关系的命名约定

  14. 14

    具有枚举值关系的通用模型

  15. 15

    模型具有多个关系的命名约定

  16. 16

    如何编写用于创建模型并具有引用相同模型的函数的for循环

  17. 17

    具有相同或相似字段的Django模型

  18. 18

    具有几乎相同属性的模型

  19. 19

    具有相同模型的多个表

  20. 20

    当两个表具有相同的列名时,在加入关系表后对模型进行排序

  21. 21

    具有相同反向访问器的同一模型的一对一和一对多关系

  22. 22

    蟒蛇:如何检查字符串是否具有相同的字符/重复它们的概率相同

  23. 23

    SequelizeJS关系,相同模型

  24. 24

    如何静态检查可能具有或不具有相同签名的两个功能是否相同?

  25. 25

    如何返回具有在Laravel 5.2中加载的选定列和渴望的关系的模型的集合

  26. 26

    Django模型,具有反向引用的一对多关系[如何]

  27. 27

    如何链接在Rails中具有多对多关系的模型?

  28. 28

    如何在Ember.js中保存具有多对多关系的模型?

  29. 29

    如何使用具有关系Laravel的模型获得单个元素

热门标签

归档