私はRailscasts 410の例 (と呼ばれるRaffler
) を再現しようとしており、最後のバージョンのセットアップを変更し、私の習慣に合わせようとしています:
- エンバー 1.0.0-rc.6
- レール 4.0.0
- モンゴイドマスター (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