【问题标题】:Ember data find() methods returns array, but I need a single recordEmber 数据 find() 方法返回数组,但我需要一条记录
【发布时间】:2014-08-29 13:32:08
【问题描述】:

我正在使用 Ember 和 Ember-Data。

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

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

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

在我的模板中:

<h1>This is the invite template.</h1>
<p>{{id}}</p>
<p>{{email}}</p>

【问题讨论】:

    标签: javascript ruby-on-rails ember.js ember-data


    【解决方案1】:

    这应该有效:

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

    【讨论】:

    • 不幸的是这不起作用,当我运行它时我的模型是空的 - 尽管在后台触发了 ajax 请求。
    • ajax请求返回什么?
    • 我在 Rails 端使用 User.where().first 而不仅仅是 User.where() - 这非常有效!
    猜你喜欢
    • 1970-01-01
    • 2013-04-16
    • 2019-05-14
    • 2021-09-07
    • 1970-01-01
    • 1970-01-01
    • 2012-08-28
    • 2016-08-27
    • 2012-05-04
    相关资源
    最近更新 更多