我试着跟着安伯尔的视频:http://www.embercasts.com/episodes/getting-started-with-ember-model
我最初尝试使用最新的车把rc4和rc6,但是在接收这个error:Ember.Adapter子类时必须实现findAll。
这没有多大意义,因为我可以看到在夹具适配器源代码中定义的findAll方法实现。我试着调试app.js以检查App.Person.adapter,但是对于所有用于混合的gets和wrappers来说,这并没有多大帮助。
然后,我从视频中直接下载了源代码,并在浏览器中打开了index.html,但仍然存在相同的错误。这真的很奇怪,因为代码显然适用于视频。
无论如何,我试着在这里做一个jsFiddle:http://jsfiddle.net/YCG9b/1/,看看是否有人能指出我想在某个地方犯的小错误。jsFiddle不喜欢从github加载成员模型. JS,所以我将全部内容粘贴到JS部分。
这里所发生的事情如此之少,以至于看起来这很可能是库的版本之间的不兼容,某些环境的问题,或者某个地方的愚蠢的语法错误。我的理解是,这行App.Person.adpater = Ember.FixtureAdapter.create();实际上并没有在person模型上放置带有findAll方法的适配器,因此后续的App.Person.find()调用失败了。
发布于 2013-08-03 20:07:02
很尴尬但我拼错了适配器..。
我甚至引用了出现错误的代码行。:(
App.Person.adapter = Ember.FixtureAdapter.create();无论如何,这是更新的小提琴,如果其他人在未来发现这一点:http://jsfiddle.net/YCG9b/3/
发布于 2013-07-28 18:10:28
看起来你把Ember模型和Ember数据混为一谈了(它们都填补了相同的模型空白)。成员数据是由成员核心团队提供的,成员模型是由Erik Bryn提供的,他也定期提交给Ember。他们俩都很棒。
余烬数据需要一个存储,你使用DS.attr和DS.Model.extend等.
顺便说一句,cdnjs有一个余烬数据,如果你想把它链接到你的小提琴。
在这里它是固定的:http://jsfiddle.net/PX5DV/
App.Store = DS.Store.extend({
revision: 13,
adapter: DS.FixtureAdapter.create()
});
App.Person = DS.Model.extend({
id: DS.attr(),
name: DS.attr()
});https://stackoverflow.com/questions/17902663
复制相似问题