我正在尝试重现Railscasts 410示例(称为Raffler
),更改最新版本的设置并符合我的习惯:
- 灰烬 1.0.0-rc.6
- 导轨 4.0.0
- Mongoid 大师 (4.0)
- 哈姆尔 4
- 会徽 0.3.0
在这个示例项目中,我们创建了一个Entry
调用小型 Rails Rest API 的简单模型。
一切都按预期工作,除了调用 Raffler.Entry.find() 来获取所有条目仅加载最后一条记录。
这是我的模型:
Raffler.Entry = DS.Model.extend
name: DS.attr('string')
winner: DS.attr('boolean')
我的商店:
DS.RESTAdapter.configure('plurals', entry: 'entries')
Raffler.Store = DS.Store.extend
revision: 12
adapter: DS.RESTAdapter.create()
调用时Raffler.Entry.find()
有一个 AJAX 请求http://localhost:3000/entries
并返回所有记录(所以我不认为问题出在服务器端):
{"entries":[{"id":{"$oid":"51e5b35b492cd4d286000001"},"name":"Foo","winner":true},{"id":{"$oid":"51e5b35b492cd4d286000002"},"name":"Bar","winner":false},{"id":{"$oid":"51e5b384492cd4d286000003"},"name":"Baz","winner":true}]}
但只有最后一条记录真正加载到模型中。
在 JS 控制台中:
e=Raffler.Entry.find()
e.toArray().length
=> 1
e.objectAt(0).get('name')
=> "Baz" (always the last one)
e.objectAt(1)
=> undefined