我試圖重現Railscasts 410例子(稱爲Raffler
),改變設置爲最後版本,並符合我的習慣:灰燼模型只加載最後一個記錄
- 灰燼1.0.0-rc.6
- 滑軌4.0.0
- Mongoid主(4.0)
- Haml的4
- 徽0.3.0
在這個示例項目中,我們創建了一個調用小型Rails Rest API的簡單模型Entry
。
除了調用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()
有上http://localhost:3000/entries
一個AJAX請求,並返回所有記錄(所以我不認爲這個問題是服務器端):
{"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
什麼e.toArray的控制檯結果()? –
@Matthew Graves:一個具有單個Ember對象的數組:'[Object {id =「[object Object]」,store =,_reference = {...},more ...}] '(縮短FF控制檯輸出) –