丸一日試した後、あきらめました。ember.js の非常に基本的なアプリケーションの場合、適切な応答で応答するサーバーへの ajax 要求をセットアップしようとしました。問題は、アレイ コントローラーのテンプレートに表示されるサーバーからモデル データ (custom_route) を取得しないことです。しかし、取得できなかったのは、関連するモデル (ステーション) のデータです。両方のモデルは次のように定義されます。
App.CustomRoute = DS.Model.extend({
name: attr('string'),
description: attr('string'),
stations: DS.hasMany(App.Station)
});
App.Station = DS.Model.extend({
name: attr('string'),
description: attr('string'),
stations: DS.hasMany(App.Station)
});
FixtureAdapter を使用すると、 {async: true} をパラメーターとして両方のメソッドに追加した後、すべてが完全に機能します。しかし、デフォルトの RESTful アダプターでは、表示されるのは custom_route モデルからのデータだけです。それは私の質問につながります: ajax 応答は、アダプターが両方のモデルから両方のデータをフェッチするように見えますか? ネット上では、モデルとそれに関連するモデルを解決する findAll() リクエストへの応答の例を見つけることができませんでした。私が見つけたものはすべて、私が試した単一のモジュールのリクエストが発生した場合に、返信がどのように見えるか (サイドロードを含む) を例示するだけです
{
"custom_routes": [
{
"custom_route": {
"id": 1,
"name": "Route 1",
"description": "Description 1",
"station_ids": [
1,
2,
3
]
}
}
],
"stations": [
{
"id": 1,
"name": "Station 1",
"description": "Description 1",
}
]
}
しかし、それはうまくいきませんでした。ただし、モデルの単一表現のキー名「custom_route」が「custom_routes」エントリの左側にある場合は、表示されます。うまくいけば、その問題の回避策があり、うまくいけば、私の英語が問題を説明するのに十分だった. 私はネイティブ スピーカーでも、長年の Web 開発者でもありません。しかし、両方を改善することを楽しみにしています:)