1

タスクのようなモデル(タイトル、時間、メモなどのデフォルトのプロパティがあります)と、タスクリストのようなコレクションがあります。これで、1つのタスクに複数のメモを含めることができます。モデルとコレクションにデータを取り込むためのRESTAPI(JSON)があります。すべてのタスク(メモを無視するのは簡単です)をリストしてから、タスク(メモを含む)を表示する必要があります。

ここからは、Backboneのようなネストされたループを実装しているようです。モデルにデータを入力して、すべてのメモをタスクに表示するにはどうすればよいですか。モデル、コレクション、ビュー、テンプレートをカバーすることになっています。

ありがとう

4

1 に答える 1

0

純粋な RESTFUL 実装では、モデルTaskNoteコレクションTaskListTaskNotes.

最初は、タスクのみをサーバーからロードする必要があるため、次のようにします。tasklist.fetch()

これは、すべてのタスクがサーバーと同期されることを期待しますが、コレクション内のタスク モデルにはメモが含まれていません。

ユーザーがタスクを選択すると、新しいTaskNotesインスタンスを作成し、それを親タスク モデルに格納し (属性としてではなく、保存時にすべての属性がバックボーンによってサーバーに渡されるため)、それをフェッチします。

それは簡単なはずですか?


本当の問題は、すべて (すべてのタスク、ネストされたすべてのメモ) を 1 回の呼び出しで取得して初期化する場合です。バックボーンはネストされたコレクション/モデルを処理しないため、これは少し注意が必要です。サーバーから返された JSON のすべてのプロパティは、プレーンな属性と見なされます。バックボーンリレーショナルやオーバーライドModel.parseメソッドなどを調べる必要があります。

1 回の呼び出しですべてを取得することはめったにありません。これはデータが多すぎるため、ユーザーはそのすべてのデータを一度に見ることはできません。オンデマンドで行う方が良いです。つまり、ユーザーがタスクを選択し、メモを取得します。

于 2013-02-23T09:44:56.790 に答える