1) Из местного магазина ember:
если вы хотите получить данные из хранилища ember, вы должны использовать peekAll
. Используйте вычисляемое свойство в вашем контроллере или компоненте,
...
quotes: computed(function() {
return this.store.peekAll('quote');
}),
...
Затем вы можете получить пользовательские данные в вашем шаблоне следующим образом:
{{#each quotes as |quote|}}
{{quote.user.username}}
{{/each}}
2) С сервера:
примечание: findAll
запрос ожидает, что данные будут в массиве.
при использовании RESTAdapter,
{ quotes:
[ {
id: 1,
text: "sample1",
user: { username: "name1", numberOfQuotes: "5" }
},
{
id: 2,
text: "sample2",
user: { username: "name2", numberOfQuotes: "8" }
}
]
}
при использовании JSONAPIAdpater,
{ quotes:
[ {
id: 1,
text: "sample1",
user: 10
},
{
id: 2,
text: "sample2",
user: 11
},
{
id: 3,
text: "sample3",
user: 10
}
],
users:
[ {
id: 10,
username: "name1",
numberOfQuotes: "5"
quotes: [1,3]
},
{
id: 11,
username: "name2",
numberOfQuotes: "8"
quotes: [2]
}
]
}
При выполнении запроса findAll
в хуке модели маршрута любой из вышеперечисленных будет тем ответом, который вы получите на основе используемого вами APIAdapter.
...
model: function() {
return this.store.findAll('quote');
}
...