在两条路线之间共享一个余烬数据模型

时间:2014-02-13 23:33:36

标签: ember.js ember-data

如果我......

  1. 定义了两个资源:

    this.resource('activity');
    this.resource('notes');
    
  2. 定义了一个模型:

    App.Note = DS.Model.extend({
    
    });
    
  3. 如何指定每个端点返回应存储为Notes的资源列表,而不是将一个存储为活动而另一个存储为Notes?

2 个答案:

答案 0 :(得分:0)

您可以在路线的model挂钩中指定此项。你会做以下事情:

App.NotesRoute = Ember.Route.extend({
   model: function() {
      return this.store.findAll('note');
   }
});

App.ActivityRoute = Ember.Route.extend({
   model: function() {
      return this.store.findAll('note');
   }
});

答案 1 :(得分:0)

Ember通过以下方式分享数据:

  1. Ember 商店服务
  2. 使用控制器与对方交谈(沟通数据)
  3. 见图

    +----------------------------------------------------------------+
    |                                                                |
    |                                                                |
    |                                                                |
    |                                                                |
    |    Ember Route                       Ember Route               |
    |          +                                 +                   |
    |          |                                 |                   |
    |          v                                 v                   |
    |    Ember Controller   <----------->  Ember Controller          |
    |          +                                 +                   |
    |          |                                 |                   |
    |          v                                 v                   |
    |    Ember Component(s)                Ember Component(s)        |
    |                                                                |
    |                                                                |
    |                                                                |
    +----------------------------------------------------------------+