そのため、ユーザーがチェックボックスを介して利用可能なオプションのリストから選択しているページがあります。私は 3 つのコレクションを持っています。1 つは可能なオプションのリスト、もう 1 つは現在保存されているオプション、保存されたオプションの複製です。チェックボックスをクリックすると、クローンリストを使用してオプションを追加/削除しています。
var possibleOptions = new Backbone.Collection("/options");
var currentUserOptions = new Backbone.Collection("/useroptions", { id: 2 });
var clonedUserOptions = new Backbone.Collection(currentUserOptions.toJSON());
このアプローチが採用された理由は、ユーザーが編集中にオプション ページをキャンセルできるため、保存ボタンをクリックしてもオプションが保持されるようにするためです。オプションがチェック/チェック解除されると、 clonedOptions が正しく更新されます。ただし、実際のリストを更新しようとすると、何も起こらないようです。
currentUserOptions.update(clonedUserOptions.toJSON());
私の期待は、バックボーンが新しいモデルのポストリクエストをトリガーし、ドキュメント( http://documentcloud.github.com/backbone/#Collection-update )に従って欠落しているモデルごとに削除することでした。これがどのように機能するかを誤解している場合はお知らせください。正しいアプローチの簡単な実例をいただければ幸いです。
ありがとう、CF