Ember数据find()方法返回数组,但我需要一条记录

ser*_*erg 1 javascript ruby-on-rails ember.js ember-data

我正在使用Ember和Ember-Data.

App.InviteRoute = Ember.Route.extend({
  model: function(params) {
    return this.store.find('user', { invitation_token: params.token });
  }
});
Run Code Online (Sandbox Code Playgroud)

这会ping我的服务器并返回单个用户记录,但该this.store.find()方法返回DS.PromiseArray.

我只需要知道如何使用任意字段使用Ember-Data获取单个对象.

在我的模板中:

<h1>This is the invite template.</h1>
<p>{{id}}</p>
<p>{{email}}</p>
Run Code Online (Sandbox Code Playgroud)

小智 6

这应该工作:

App.InviteRoute = Ember.Route.extend({
  model: function(params) {
       return this.store.find('user', { invitation_token: params.token }).then(function(users) {
                  return users.get('firstObject');
        });
});
Run Code Online (Sandbox Code Playgroud)