javascript - 使用 ember_data 而不是 ember_model.js

标签 javascript ember.js ember-data

如果 ember_model.js 包含以下代码,则可以正常工作:(顺便说一句,Ember Model:0.0.11 不是 ember.js 的一部分?为什么我必须在 MVC 框架中将模型包含在单独的 js 文件中?)

App = Ember.Application.create();

App.IndexRoute = Ember.Route.extend({
  model: function() {
    return App.User.find();
  }
});

App.User = Ember.Model.extend({
    username: Ember.attr()
});

App.User.adapter = Ember.RESTAdapter.create();
App.User.url = "/sf2/web/app_dev.php/api/users";
App.User.collectionKey = "users";

现在我想使用 ember_data.js (调试:Ember 数据:1.0.0-beta.7.f87cba88)。控制台中没有错误,但从网络上看,没有调用 api,页面保持空白。

App = Ember.Application.create();

App.Store = DS.Store.extend({
    adapter: DS.RESTAdapter.create({
        url: '/sf2/web/app_dev.php/api'
    })
});

App.User = DS.Model.extend({
    username: DS.attr('string')

});


App.UserRoute = Ember.Route.extend({
    model: function() {
        return App.User.find();
    }
});

最佳答案

Ember 可以在没有 Ember 模型和 Ember 数据的情况下使用。 Ember Model 和 Ember Data 是可与 Ember 一起使用的数据持久性库。 Ember 模型由 Erik Bryn 创建,目前尚未积极开发。 Ember Data 由 Ember 核心团队创建,目前正在积极开发中。

您在第二个示例中本质上错误地使用了 Ember 数据。您应该阅读这份过渡文件。 https://github.com/emberjs/data/blob/master/TRANSITION.md另外,这里有一个使用 Ember 数据的小示例。

Ember Data 的主要概念是定义一个适配器、一个模型,然后使用存储来查找记录。

适配器

App.ApplicationAdapter = DS.RESTAdapter;

型号

App.User = DS.Model.extend({
  firstName: DS.attr()
});

商店

this.get('store').find('user');

http://emberjs.jsbin.com/OxIDiVU/269/edit

关于javascript - 使用 ember_data 而不是 ember_model.js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22315630/

相关文章:

javascript - Jest TypeError : Path must be a string. 收到未定义

javascript - dojo增强网格在特定单元格上动态设置可编辑错误不进行更改

javascript - Ember 添加有许多子模型可供从下拉列表中选择

unit-testing - Ember CLI 测试复杂的模型关系

javascript - HTML5 视频覆盖全屏控制

javascript - 搜索字段在输入 1 个字母后将我踢出输入字段

javascript - 在 Ember Handlebars 模板中呈现已解决的 promise 值

ember.js - 如何在 Ember 中检测浏览器

ember.js - 删除记录后列表未更新

jquery - 使用mockjax进行模拟rest API调用