私は Ember データを使用していますが、サーバーからの JSON 応答でネストされたプロパティを認識するために ember を取得するのに苦労しています。これは ember-1.0.0-pre.4.js です。
現在、関連するモデルを Ember データ リビジョン 11 に設定しています。
# School Model
App.School = DS.Model.extend
addr: DS.belongsTo('App.Addr')
name: DS.attr 'string'
status: DS.attr 'string'
# Address Model
App.Addr = DS.Model.extend
school: DS.belongsTo 'App.School'
line1: DS.attr 'string'
city: DS.attr 'string'
state: DS.attr 'string'
iso: DS.attr 'string'
そして、これが私のサーバーからの JSON 応答です。
{"schools":
[{
"_id":"51020261bbc3b8c526000007",
"name":"Willamette",
"status":"p",
"addr":{
"line1":"122 Evergreen Terrace",
"city":"Springfield",
"state":"IL",
"iso":"US"
}
}
]}
私のアダプターは次のように設定されています:
App.Store = DS.Store.extend
revision: 11
adapter: DS.RESTAdapter.create({
url: "http://localhost:8000/api"
serializer: DS.RESTSerializer.extend
primaryKey: (type) ->
'_id';
})
更新: 次のように、 addr プロパティをマップしようとしました。まだサイコロはありません...
DS.RESTAdapter.map 'App.School',
addr: { embedded: 'always'}
私のテンプレートでは、このようなことをしたいと思います...
<script type="text/x-handlebars" data-template-name="school">
<h2>School: {{name}}</h2>
<p> Status: {{ status }}</p>
<p> Address: {{ addr.line1 }} {{ addr.city }} </p>
</script>
name プロパティと status プロパティは正常に表示されます。しかし、addr.line1 と addr.city は空白です。ネストされた addr プロパティを Ember に認識させる方法はありますか?
ありがとう!