3

我正在寻找可以帮助我了解 ember 中的同步模型的指南。我尝试在最新版本上使用 RestAdapter,但出现错误。所以我决定在ember js网站上使用基于稳定ember数据的BasicAdapter 。

这是我的模型:

App.Accounts = DS.Model.extend({
 name:DS.attr('string')
,date:DS.attr('date')
})

这是我为模型声明同步函数的地方。

App.Accounts.sync = {
list: function() {
    $.ajax({
        type: 'POST',
        cache: false,
        url: contextPath + 'account/list',
        success: function(data) {
            this.load()
        },
        error: function(jqXHR, textStatus, errorThrown) {
        },
        async: false
    });
}
}

我在设置控制器中调用列表函数:

App.TestRoute = Ember.Route.extend({
setupController:function(){
    App.Accounts.list()
}
})

该函数不执行。在 ember 应用程序中调用同步函数的正确方法是什么?另外,我可以使用有关此主题的博客/文章。

谢谢!

4

1 回答 1

2

您是否检查过Ember 模型,它为您提供了一个基本适配器,而无需使用 EmberData。

Erik 在 embercasts.com 上有一个教程,您可能需要注册成为 beta 用户。

var attr = Ember.attr;

App.User = Ember.Model.extend({
  id: attr(),
  name: attr()
});

App.User.url = "/users";
App.User.adapter = Ember.RESTAdapter.create();

var newUser = App.User.create({name: "Erik"});
newUser.save(); // POST to /users.json

var existingUser = App.User.find(1); // GET /users/1.json
existingUser.set('name', 'Kris');
existingUser.get('isDirty'); // => true
existingUser.save(); // PUT /users/1.json

干杯

于 2013-05-13T19:05:04.767 回答