检索最后的&从Ember.js模型的倒数第二个记录

Retrieve last & second to last record from model with Ember.js

本文关键字:倒数 倒数第二 第二个 记录 模型 js 最后的 Ember 检索      更新时间:2023-09-26

我正在做一个文本编辑器。我希望用户能够处理最新的草稿,同时也允许审查第二个到最后一个草稿。

我试了如下:

App.ReviewerRoute = Ember.Route.extend({
  model: function() {
    var allDrafts = this.store.all('draft');
    var secondToLastDraft = allDrafts[allDrafts.length-2];
    return secondToLastDraft;
  }
});

Then I try:

App.ReviewerRoute = Ember.Route.extend({
  model: function() {
    var allDrafts = this.store.all('draft');
    var secondToLastDraft = this.store.find('draft',[allDrafts.length-2]);
    return secondToLastDraft;
  }
});

都没有退回汇票。

我主要关心的是,为了使用对象控制器,我只想检索一个草稿。如有任何建议,我将不胜感激。

编辑:问题来了。每份文件都有很多草稿。用户应该能够访问给定文档的最近两个草稿。我假设我不需要EmberArrayController用于草稿,因为只需要最后两个草稿,它们也将显示在两个不同的模板/组件/视图中。最让我困惑的是,我应该把返回的方法放在哪里,比如说,最后一份草稿。在Rails中,我将其作为Draft模型上的类方法。谢谢你的帮助。

Github repo: https://github.com/den1k/whiteink/tree/master/ember

使用objectAt:

App.ReviewerRoute = Ember.Route.extend({
  model: function() {
    var allDrafts = this.store.all('draft');
    var count = allDrafts.get('length');
    return allDrafts.objectAt(count-2) || allDrafts.objectAt(count-1); 
  }
});