私の Ember-Data モデル内の関係の宣言では、キャメル ケースの命名法を使用していましたが、ダッシュ化された宣言を使用する必要があることが判明しました。
例えば:
// Example Investment model (investment.js)
export default DS.Model.extend({
// ...
/**
* The investment can have many transactions.
*/
investmentTransactions: DS.hasMany('investmentTransactions'),
// ...
});
...ほとんどの状況で問題なく動作します。ただし、クエリでデータをサイドロード ( include ) しようとすると:
store.findRecord('investment', someId, { include: 'investment-transactions' });
...すべての投資トランザクションと一緒に投資ペイロードを返しますが、私の Ember Data モデルはそれらのトランザクションを見ることができません。それを修正するために、私のhasMany
宣言ではダッシュ化された名前を使用する必要がありました (これは、belongsTo
あなたが持っている可能性のある宣言にも当てはまります):
/**
* The investment can have many transactions.
*/
investmentTransactions: DS.hasMany('investment-transactions'),