ruby-on-rails - 使用 Ember 从服务器获取 JSON 数据

标签 ruby-on-rails ember.js ember-rails

我的 Rails 应用程序中有一个 Court.rb 模型(继承自 Active Record),我也将其与 ember-rails gem 一起使用。

我在 Ember 中为其创建了一个法院模型

 App.Court = DS.Model.extend({
    jurisdictionId: DS.attr('number'),
    name: DS.attr('string')
  });

路由器中有法庭资源

  App.Router.map(function() {
    this.resource("courts");
    this.resource("about");

  });

并且,为了检索数据,我创建了一个在 Court 模型上调用 findAll() 的法院路由

App.CourtsRoute = Ember.Route.extend({
  model: function() {
    return App.Court.findAll();
  }

});

Ember 为此给出了一条很长的错误消息,其最后部分表示 has no method 'findAll' 。我还尝试使用 App.Court.find() 并得到了相同的错误。

这本质上就是 Ryan Bates 在 Ember 上的 Railscast 中从服务器检索数据所做的事情 他创建了一个入门模型

Raffler.Entry = DS.Model.extend({
  name: DS.attr('string'),
  winner: DS.attr('boolean')
});

还有一个在模型上调用 find 的 Entries 路由

 Raffler.EntriesRoute = Ember.Route.extend

  model:  -> Raffler.Entry.find()

你能解释一下我可能做错了什么才能让它发挥作用吗?

最佳答案

您可能正在运行最新版本的 Ember Data,

尝试使用:

return this.store.find('court'); 而不是 return App.Court.findAll();

这是一个显示简单结构的 jsfiddle:http://jsfiddle.net/XUmTC/2/

有关过渡的更多信息,请查看此处:https://github.com/emberjs/data/blob/master/TRANSITION.md

关于ruby-on-rails - 使用 Ember 从服务器获取 JSON 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18684701/

相关文章:

ember.js - 可以在 Ember 的服务内部进行路由转换吗?

ruby-on-rails - Rspec 请求规范期间 Rails 4 中的循环依赖错误

ember.js - 使用嵌套路由时可以使用应用程序导出吗?

ruby-on-rails - PG::InsufficientPrivilege: 错误:创建数据库 Ruby on Rails 应用程序的权限被拒绝

jquery - Rails 4 Controller 不返回格式正确的 JSON

json - Ember 数据 : Using "links" on JSON payload for hasMany relationships

ember.js - Ember-Rails 和命名空间模板

ruby-on-rails - RoR 缓存如何工作?

ruby-on-rails - f.fields_for rails 中的 has_many 关系

javascript - 在 Ember.js 中渲染应用程序之前等待模型加载